am 1558abd6: Merge change I53e268db into eclair-sdk
Merge commit '1558abd6d3706380cf4634c151ee7952e0b317fb' into eclair
* commit '1558abd6d3706380cf4634c151ee7952e0b317fb':
docs: make the apidemos app index page only display the
diff --git a/apps/Development/AndroidManifest.xml b/apps/Development/AndroidManifest.xml
index 0bdd26e..7f0f594 100644
--- a/apps/Development/AndroidManifest.xml
+++ b/apps/Development/AndroidManifest.xml
@@ -84,6 +84,14 @@
</intent-filter>
</activity>
+ <activity android:name="SyncAdapterDriver" android:label="Sync Tester"
+ android:theme="@android:style/Theme.Light">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.TEST" />
+ </intent-filter>
+ </activity>
+
<activity android:name="DataList">
</activity>
<activity android:name="Details">
diff --git a/apps/Development/res/layout/account_list_view.xml b/apps/Development/res/layout/account_list_view.xml
new file mode 100644
index 0000000..d255672
--- /dev/null
+++ b/apps/Development/res/layout/account_list_view.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source 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.
+-->
+
+<ListView
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"/>
diff --git a/apps/Development/res/layout/sync_adapter_driver.xml b/apps/Development/res/layout/sync_adapter_driver.xml
new file mode 100644
index 0000000..58c0ebb
--- /dev/null
+++ b/apps/Development/res/layout/sync_adapter_driver.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source 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.
+-->
+
+<LinearLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+
+ <LinearLayout android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content">
+ <TextView android:id="@+id/sync_adapters_spinner_label"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textSize="22dip"
+ android:text="@string/sync_adapters_spinner_label"/>
+
+ <Spinner android:id="@+id/sync_adapters_spinner"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"/>
+ <LinearLayout
+ android:orientation="horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="52dip">
+ <Button
+ android:id="@+id/bind_button"
+ android:layout_width="0dip"
+ android:layout_height="wrap_content"
+ android:text="@string/bind_button"
+ android:onClick="initiateBind"
+ android:layout_weight="2"/>
+
+ <Button
+ android:id="@+id/unbind_button"
+ android:layout_width="0dip"
+ android:layout_height="wrap_content"
+ android:text="@string/unbind_button"
+ android:onClick="initiateUnbind"
+ android:layout_weight="2"/>
+ </LinearLayout>
+
+ <TextView android:id="@+id/bound_adapter_text_view"
+ android:layout_width="wrap_content"
+ android:textSize="20dip"
+ android:layout_height="wrap_content"/>
+
+ <LinearLayout
+ android:orientation="horizontal"
+ android:layout_width="fill_parent"
+ android:layout_height="52dip">
+ <Button
+ android:id="@+id/start_sync_button"
+ android:layout_width="0dip"
+ android:layout_height="wrap_content"
+ android:text="@string/start_sync_button"
+ android:onClick="startSyncSelected"
+ android:layout_weight="2"/>
+
+ <Button
+ android:id="@+id/cancel_sync_button"
+ android:layout_width="0dip"
+ android:layout_height="wrap_content"
+ android:text="@string/cancel_sync_button"
+ android:onClick="cancelSync"
+ android:layout_weight="2"/>
+ </LinearLayout>
+
+ <TextView android:id="@+id/status_text_view"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"/>
+ </LinearLayout>
+</LinearLayout>
diff --git a/apps/Development/res/layout/sync_adapter_item.xml b/apps/Development/res/layout/sync_adapter_item.xml
new file mode 100644
index 0000000..d818c78
--- /dev/null
+++ b/apps/Development/res/layout/sync_adapter_item.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2009, The Android Open Source 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.
+*/
+-->
+<TextView xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@android:id/text1"
+ style="?android:attr/spinnerItemStyle"
+ android:singleLine="true"
+ android:layout_width="fill_parent"
+ android:layout_height="52dip"
+ android:ellipsize="marquee" />
diff --git a/apps/Development/res/values/strings.xml b/apps/Development/res/values/strings.xml
index ad70fbe..c8a3f8b 100644
--- a/apps/Development/res/values/strings.xml
+++ b/apps/Development/res/values/strings.xml
@@ -155,4 +155,25 @@
<string name="accounts_tester_edit_properties">Properties</string>
<string name="accounts_tester_desired_authtokentype_label">authtoken type:</string>
<string name="accounts_tester_desired_features_label">features:</string>
+
+ <!-- SyncAdapterDriver -->
+ <string name="bind_button">bind</string>
+ <string name="unbind_button">unbind</string>
+ <string name="start_sync_button">start sync</string>
+ <string name="cancel_sync_button">cancel sync</string>
+ <string name="sync_adapters_spinner_label">Registered Sync Adapters:</string>
+ <string name="status_starting_sync_format">Starting a sync of account %s...</string>
+ <string name="status_remote_exception_while_starting_sync">Got a RemoteException while starting the sync</string>
+ <string name="status_canceled_sync">Canceled the sync</string>
+ <string name="status_remote_exception_while_canceling_sync">Got a RemoteException while canceling the sync</string>
+ <string name="status_received_heartbeat">Received heartbeat</string>
+ <string name="status_sync_failed_format">Sync failed: %s</string>
+ <string name="status_sync_succeeded_format">Sync succeeded: %s</string>
+ <string name="status_already_bound">Already bound to sync adapter</string>
+ <string name="status_sync_adapter_not_selected">No selected sync adapter</string>
+ <string name="binding_connected_format">Connected to Sync Adapter\n\tauthority: %s\n\taccount type: %s</string>
+ <string name="binding_not_connected">Not connected to a sync adapter</string>
+ <string name="binding_bind_failed">Bind failed</string>
+ <string name="binding_waiting_for_connection">Waiting for service to be connected...</string>
+ <string name="select_account_to_sync">Select account to sync</string>
</resources>
diff --git a/apps/Development/src/com/android/development/SyncAdapterDriver.java b/apps/Development/src/com/android/development/SyncAdapterDriver.java
new file mode 100644
index 0000000..c37075f
--- /dev/null
+++ b/apps/Development/src/com/android/development/SyncAdapterDriver.java
@@ -0,0 +1,374 @@
+/*
+ * Copyright (C) 2009 The Android Open Source 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.
+ */
+
+package com.android.development;
+
+import android.app.Activity;
+import android.app.PendingIntent;
+import android.app.Dialog;
+import android.app.AlertDialog;
+import android.content.res.TypedArray;
+import android.content.pm.RegisteredServicesCache;
+import android.content.pm.RegisteredServicesCacheListener;
+import android.content.SyncAdapterType;
+import android.content.ISyncAdapter;
+import android.content.ISyncContext;
+import android.content.ServiceConnection;
+import android.content.ComponentName;
+import android.content.SyncResult;
+import android.content.Intent;
+import android.content.Context;
+import android.os.Bundle;
+import android.os.IBinder;
+import android.os.RemoteException;
+import android.widget.ArrayAdapter;
+import android.widget.AdapterView;
+import android.widget.Spinner;
+import android.widget.Button;
+import android.widget.TextView;
+import android.widget.ListView;
+import android.util.AttributeSet;
+import android.provider.Settings;
+import android.accounts.Account;
+import android.accounts.AccountManager;
+import android.view.View;
+import android.view.LayoutInflater;
+
+import java.util.Collection;
+
+public class SyncAdapterDriver extends Activity
+ implements RegisteredServicesCacheListener<SyncAdapterType>,
+ AdapterView.OnItemClickListener {
+ private Spinner mSyncAdapterSpinner;
+
+ private Button mBindButton;
+ private Button mUnbindButton;
+ private TextView mBoundAdapterTextView;
+ private Button mStartSyncButton;
+ private Button mCancelSyncButton;
+ private TextView mStatusTextView;
+ private Object[] mSyncAdapters;
+ private SyncAdaptersCache mSyncAdaptersCache;
+ private final Object mSyncAdaptersLock = new Object();
+
+ private static final int DIALOG_ID_PICK_ACCOUNT = 1;
+ private ListView mAccountPickerView = null;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ mSyncAdaptersCache = new SyncAdaptersCache(this);
+ setContentView(R.layout.sync_adapter_driver);
+
+ mSyncAdapterSpinner = (Spinner) findViewById(R.id.sync_adapters_spinner);
+ mBindButton = (Button) findViewById(R.id.bind_button);
+ mUnbindButton = (Button) findViewById(R.id.unbind_button);
+ mBoundAdapterTextView = (TextView) findViewById(R.id.bound_adapter_text_view);
+
+ mStartSyncButton = (Button) findViewById(R.id.start_sync_button);
+ mCancelSyncButton = (Button) findViewById(R.id.cancel_sync_button);
+
+ mStatusTextView = (TextView) findViewById(R.id.status_text_view);
+
+ getSyncAdapters();
+ mSyncAdaptersCache.setListener(this, null /* Handler */);
+ }
+
+ protected void onDestroy() {
+ mSyncAdaptersCache.close();
+ super.onDestroy();
+ }
+
+ private void getSyncAdapters() {
+ Collection<RegisteredServicesCache.ServiceInfo<SyncAdapterType>> all =
+ mSyncAdaptersCache.getAllServices();
+ synchronized (mSyncAdaptersLock) {
+ mSyncAdapters = new Object[all.size()];
+ String[] names = new String[mSyncAdapters.length];
+ int i = 0;
+ for (RegisteredServicesCache.ServiceInfo<SyncAdapterType> item : all) {
+ mSyncAdapters[i] = item;
+ names[i] = item.type.authority + " - " + item.type.accountType;
+ i++;
+ }
+
+ ArrayAdapter<String> adapter =
+ new ArrayAdapter<String>(this,
+ R.layout.sync_adapter_item, names);
+ mSyncAdapterSpinner.setAdapter(adapter);
+ }
+ }
+
+ void updateUi() {
+ boolean isBound;
+ boolean hasServiceConnection;
+ synchronized (mServiceConnectionLock) {
+ hasServiceConnection = mActiveServiceConnection != null;
+ isBound = hasServiceConnection && mActiveServiceConnection.mBoundSyncAdapter != null;
+ }
+ mStartSyncButton.setEnabled(isBound);
+ mCancelSyncButton.setEnabled(isBound);
+ mBindButton.setEnabled(!hasServiceConnection);
+ mUnbindButton.setEnabled(hasServiceConnection);
+ }
+
+ public void startSyncSelected(View view) {
+ synchronized (mServiceConnectionLock) {
+ ISyncAdapter syncAdapter = null;
+ if (mActiveServiceConnection != null) {
+ syncAdapter = mActiveServiceConnection.mBoundSyncAdapter;
+ }
+
+ if (syncAdapter != null) {
+ removeDialog(DIALOG_ID_PICK_ACCOUNT);
+
+ mAccountPickerView = (ListView) LayoutInflater.from(this).inflate(
+ R.layout.account_list_view, null);
+ mAccountPickerView.setOnItemClickListener(this);
+ Account accounts[] = AccountManager.get(this).getAccountsByType(
+ mActiveServiceConnection.mSyncAdapter.type.accountType);
+ String[] accountNames = new String[accounts.length];
+ for (int i = 0; i < accounts.length; i++) {
+ accountNames[i] = accounts[i].name;
+ }
+ ArrayAdapter<String> adapter =
+ new ArrayAdapter<String>(SyncAdapterDriver.this,
+ android.R.layout.simple_list_item_1, accountNames);
+ mAccountPickerView.setAdapter(adapter);
+
+ showDialog(DIALOG_ID_PICK_ACCOUNT);
+ }
+ }
+ updateUi();
+ }
+
+ private void startSync(String accountName) {
+ synchronized (mServiceConnectionLock) {
+ ISyncAdapter syncAdapter = null;
+ if (mActiveServiceConnection != null) {
+ syncAdapter = mActiveServiceConnection.mBoundSyncAdapter;
+ }
+
+ if (syncAdapter != null) {
+ try {
+ mStatusTextView.setText(
+ getString(R.string.status_starting_sync_format, accountName));
+ Account account = new Account(accountName,
+ mActiveServiceConnection.mSyncAdapter.type.accountType);
+ syncAdapter.startSync(mActiveServiceConnection,
+ mActiveServiceConnection.mSyncAdapter.type.authority,
+ account, new Bundle());
+ } catch (RemoteException e) {
+ mStatusTextView.setText(
+ getString(R.string.status_remote_exception_while_starting_sync));
+ }
+ }
+ }
+ updateUi();
+ }
+
+ public void cancelSync(View view) {
+ synchronized (mServiceConnectionLock) {
+ ISyncAdapter syncAdapter = null;
+ if (mActiveServiceConnection != null) {
+ syncAdapter = mActiveServiceConnection.mBoundSyncAdapter;
+ }
+
+ if (syncAdapter != null) {
+ try {
+ mStatusTextView.setText(getString(R.string.status_canceled_sync));
+ syncAdapter.cancelSync(mActiveServiceConnection);
+ } catch (RemoteException e) {
+ mStatusTextView.setText(
+ getString(R.string.status_remote_exception_while_canceling_sync));
+ }
+ }
+ }
+ updateUi();
+ }
+
+ public void onServiceChanged(SyncAdapterType type, boolean removed) {
+ getSyncAdapters();
+ }
+
+ @Override
+ protected Dialog onCreateDialog(final int id) {
+ if (id == DIALOG_ID_PICK_ACCOUNT) {
+ AlertDialog.Builder builder = new AlertDialog.Builder(this);
+ builder.setMessage(R.string.select_account_to_sync);
+ builder.setInverseBackgroundForced(true);
+ builder.setView(mAccountPickerView);
+ return builder.create();
+ }
+ return super.onCreateDialog(id);
+ }
+
+ public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
+ TextView item = (TextView) view;
+ final String accountName = item.getText().toString();
+ dismissDialog(DIALOG_ID_PICK_ACCOUNT);
+ startSync(accountName);
+ }
+
+ private class MyServiceConnection extends ISyncContext.Stub implements ServiceConnection {
+ private volatile ISyncAdapter mBoundSyncAdapter;
+ final RegisteredServicesCache.ServiceInfo<SyncAdapterType> mSyncAdapter;
+
+ public MyServiceConnection(
+ RegisteredServicesCache.ServiceInfo<SyncAdapterType> syncAdapter) {
+ mSyncAdapter = syncAdapter;
+ }
+
+ public void onServiceConnected(ComponentName name, IBinder service) {
+ mBoundSyncAdapter = ISyncAdapter.Stub.asInterface(service);
+ final SyncAdapterType type = mActiveServiceConnection.mSyncAdapter.type;
+ mBoundAdapterTextView.setText(getString(R.string.binding_connected_format,
+ type.authority, type.accountType));
+ updateUi();
+ }
+
+ public void onServiceDisconnected(ComponentName name) {
+ mBoundAdapterTextView.setText(getString(R.string.binding_not_connected));
+ mBoundSyncAdapter = null;
+ updateUi();
+ }
+
+ public void sendHeartbeat() {
+ runOnUiThread(new Runnable() {
+ public void run() {
+ uiThreadSendHeartbeat();
+ }
+ });
+ }
+
+ public void uiThreadSendHeartbeat() {
+ mStatusTextView.setText(getString(R.string.status_received_heartbeat));
+ }
+
+ public void uiThreadOnFinished(SyncResult result) {
+ if (result.hasError()) {
+ mStatusTextView.setText(
+ getString(R.string.status_sync_failed_format, result.toString()));
+ } else {
+ mStatusTextView.setText(
+ getString(R.string.status_sync_succeeded_format, result.toString()));
+ }
+ }
+
+ public void onFinished(final SyncResult result) throws RemoteException {
+ runOnUiThread(new Runnable() {
+ public void run() {
+ uiThreadOnFinished(result);
+ }
+ });
+ }
+ }
+
+ final Object mServiceConnectionLock = new Object();
+ MyServiceConnection mActiveServiceConnection;
+
+ public void initiateBind(View view) {
+ synchronized (mServiceConnectionLock) {
+ if (mActiveServiceConnection != null) {
+ mStatusTextView.setText(getString(R.string.status_already_bound));
+ return;
+ }
+
+ RegisteredServicesCache.ServiceInfo<SyncAdapterType> syncAdapter =
+ getSelectedSyncAdapter();
+ if (syncAdapter == null) {
+ mStatusTextView.setText(getString(R.string.status_sync_adapter_not_selected));
+ return;
+ }
+
+ mActiveServiceConnection = new MyServiceConnection(syncAdapter);
+
+ Intent intent = new Intent();
+ intent.setAction("android.content.SyncAdapter");
+ intent.setComponent(syncAdapter.componentName);
+ intent.putExtra(Intent.EXTRA_CLIENT_LABEL,
+ com.android.internal.R.string.sync_binding_label);
+ intent.putExtra(Intent.EXTRA_CLIENT_INTENT, PendingIntent.getActivity(
+ this, 0, new Intent(Settings.ACTION_SYNC_SETTINGS), 0));
+ if (!bindService(intent, mActiveServiceConnection, Context.BIND_AUTO_CREATE)) {
+ mBoundAdapterTextView.setText(getString(R.string.binding_bind_failed));
+ mActiveServiceConnection = null;
+ return;
+ }
+ mBoundAdapterTextView.setText(getString(R.string.binding_waiting_for_connection));
+ }
+ updateUi();
+ }
+
+ public void initiateUnbind(View view) {
+ synchronized (mServiceConnectionLock) {
+ if (mActiveServiceConnection == null) {
+ return;
+ }
+ mBoundAdapterTextView.setText("");
+ unbindService(mActiveServiceConnection);
+ mActiveServiceConnection = null;
+ }
+ updateUi();
+ }
+
+ private RegisteredServicesCache.ServiceInfo<SyncAdapterType> getSelectedSyncAdapter() {
+ synchronized (mSyncAdaptersLock) {
+ final int position = mSyncAdapterSpinner.getSelectedItemPosition();
+ if (position == AdapterView.INVALID_POSITION) {
+ return null;
+ }
+ try {
+ //noinspection unchecked
+ return (RegisteredServicesCache.ServiceInfo<SyncAdapterType>)
+ mSyncAdapters[position];
+ } catch (Exception e) {
+ return null;
+ }
+ }
+ }
+
+ static class SyncAdaptersCache extends RegisteredServicesCache<SyncAdapterType> {
+ private static final String SERVICE_INTERFACE = "android.content.SyncAdapter";
+ private static final String SERVICE_META_DATA = "android.content.SyncAdapter";
+ private static final String ATTRIBUTES_NAME = "sync-adapter";
+
+ SyncAdaptersCache(Context context) {
+ super(context, SERVICE_INTERFACE, SERVICE_META_DATA, ATTRIBUTES_NAME, null);
+ }
+
+ public SyncAdapterType parseServiceAttributes(String packageName, AttributeSet attrs) {
+ TypedArray sa = mContext.getResources().obtainAttributes(attrs,
+ com.android.internal.R.styleable.SyncAdapter);
+ try {
+ final String authority =
+ sa.getString(com.android.internal.R.styleable.SyncAdapter_contentAuthority);
+ final String accountType =
+ sa.getString(com.android.internal.R.styleable.SyncAdapter_accountType);
+ if (authority == null || accountType == null) {
+ return null;
+ }
+ final boolean userVisible = sa.getBoolean(
+ com.android.internal.R.styleable.SyncAdapter_userVisible, true);
+ final boolean supportsUploading = sa.getBoolean(
+ com.android.internal.R.styleable.SyncAdapter_supportsUploading, true);
+ return new SyncAdapterType(authority, accountType, userVisible, supportsUploading);
+ } finally {
+ sa.recycle();
+ }
+ }
+ }
+}
diff --git a/apps/Fallback/res/values-da/strings.xml b/apps/Fallback/res/values-da/strings.xml
index 4584e61..cc894c6 100644
--- a/apps/Fallback/res/values-da/strings.xml
+++ b/apps/Fallback/res/values-da/strings.xml
@@ -16,6 +16,6 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="appTitle" msgid="161410001913116606">"Reserve"</string>
- <string name="title" msgid="8156274565006125136">"Ikke understøttet handling"</string>
- <string name="error" msgid="6539615832923362301">"Handlingen er ikke understøttet i øjeblikket."</string>
+ <string name="title" msgid="8156274565006125136">"Handlingen understøttes ikke"</string>
+ <string name="error" msgid="6539615832923362301">"Handlingen understøttes ikke i øjeblikket."</string>
</resources>
diff --git a/build/sdk.atree b/build/sdk.atree
index 2cf0eba..3df449c 100644
--- a/build/sdk.atree
+++ b/build/sdk.atree
@@ -189,16 +189,21 @@
docs/categories.txt platforms/${PLATFORM_NAME}/data/categories.txt
docs/widgets.txt platforms/${PLATFORM_NAME}/data/widgets.txt
framework/layoutlib.jar platforms/${PLATFORM_NAME}/data/layoutlib.jar
+
+# framework resources for layoutlib
frameworks/base/core/res/res platforms/${PLATFORM_NAME}/data/res
-frameworks/base/data/fonts/fonts.xml platforms/${PLATFORM_NAME}/data/fonts/fonts.xml
-frameworks/base/data/fonts/DroidSans.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSans.ttf
-frameworks/base/data/fonts/DroidSans-Bold.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSans-Bold.ttf
-frameworks/base/data/fonts/DroidSansFallback.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSansFallback.ttf
-frameworks/base/data/fonts/DroidSansMono.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSansMono.ttf
-frameworks/base/data/fonts/DroidSerif-Bold.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-Bold.ttf
+
+# fonts for layoutlib.
+frameworks/base/data/fonts/fonts.xml platforms/${PLATFORM_NAME}/data/fonts/fonts.xml
+frameworks/base/data/fonts/DroidSans.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSans.ttf
+frameworks/base/data/fonts/DroidSans-Bold.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSans-Bold.ttf
+frameworks/base/data/fonts/DroidSansMono.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSansMono.ttf
+frameworks/base/data/fonts/DroidSerif-Bold.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-Bold.ttf
frameworks/base/data/fonts/DroidSerif-BoldItalic.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-BoldItalic.ttf
-frameworks/base/data/fonts/DroidSerif-Italic.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-Italic.ttf
-frameworks/base/data/fonts/DroidSerif-Regular.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-Regular.ttf
+frameworks/base/data/fonts/DroidSerif-Italic.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-Italic.ttf
+frameworks/base/data/fonts/DroidSerif-Regular.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-Regular.ttf
+frameworks/base/data/fonts/DroidSansFallback.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSansFallback.ttf
+frameworks/base/data/fonts/DroidSansJapanese.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSansJapanese.ttf
# empty add-on folder with just a readme copied from sdk.git
sdk/scripts/README_add-ons.txt add-ons/README.txt
diff --git a/ndk/apps/hello-gl2/Application.mk b/ndk/apps/hello-gl2/Application.mk
new file mode 100644
index 0000000..6f884bf
--- /dev/null
+++ b/ndk/apps/hello-gl2/Application.mk
@@ -0,0 +1,3 @@
+APP_PROJECT_PATH := $(call my-dir)/project
+APP_MODULES := libgl2jni
+
diff --git a/ndk/apps/hello-gl2/project/Android.mk b/ndk/apps/hello-gl2/project/Android.mk
new file mode 100644
index 0000000..2e36165
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/Android.mk
@@ -0,0 +1,10 @@
+LOCAL_PATH:= $(LOCAL_PATH)/jni
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libgl2jni
+LOCAL_CFLAGS := -Werror
+LOCAL_SRC_FILES := gl_code.cpp
+LOCAL_LDLIBS := -llog -lGLESv2
+
+include $(BUILD_SHARED_LIBRARY)
diff --git a/ndk/apps/hello-gl2/project/AndroidManifest.xml b/ndk/apps/hello-gl2/project/AndroidManifest.xml
new file mode 100644
index 0000000..0ef6fb0
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/AndroidManifest.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2009, The Android Open Source 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.
+*/
+-->
+
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="com.android.gl2jni">
+ <application
+ android:label="@string/gl2jni_activity">
+ <activity android:name="GL2JNIActivity"
+ android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
+ android:launchMode="singleTask"
+ android:configChanges="orientation|keyboardHidden">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.LAUNCHER" />
+ </intent-filter>
+ </activity>
+ </application>
+ <uses-sdk android:minSdkVersion="5"/>
+</manifest>
diff --git a/ndk/apps/hello-gl2/project/default.properties b/ndk/apps/hello-gl2/project/default.properties
new file mode 100644
index 0000000..dbf05f2
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/default.properties
@@ -0,0 +1,11 @@
+# This file is automatically generated by Android Tools.
+# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
+#
+# This file must be checked in Version Control Systems.
+#
+# To customize properties used by the Ant build system use,
+# "build.properties", and override values to adapt the script to your
+# project structure.
+
+# Project target.
+target=android-5
diff --git a/ndk/apps/hello-gl2/project/jni/Android.mk b/ndk/apps/hello-gl2/project/jni/Android.mk
new file mode 100644
index 0000000..a995c86
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/jni/Android.mk
@@ -0,0 +1,24 @@
+# Copyright (C) 2009 The Android Open Source 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.
+#
+LOCAL_PATH:= $(call my-dir)
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libgl2jni
+LOCAL_CFLAGS := -Werror
+LOCAL_SRC_FILES := gl_code.cpp
+LOCAL_LDLIBS := -llog -lGLESv2
+
+include $(BUILD_SHARED_LIBRARY)
diff --git a/ndk/apps/hello-gl2/project/jni/gl_code.cpp b/ndk/apps/hello-gl2/project/jni/gl_code.cpp
new file mode 100644
index 0000000..e1e30ce
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/jni/gl_code.cpp
@@ -0,0 +1,182 @@
+/*
+ * Copyright (C) 2009 The Android Open Source 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.
+ */
+
+// OpenGL ES 2.0 code
+
+#include <jni.h>
+#include <android/log.h>
+
+#include <GLES2/gl2.h>
+#include <GLES2/gl2ext.h>
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <math.h>
+
+#define LOG_TAG "libgl2jni"
+#define LOGI(...) __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)
+#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR,LOG_TAG,__VA_ARGS__)
+
+static void printGLString(const char *name, GLenum s) {
+ const char *v = (const char *) glGetString(s);
+ LOGI("GL %s = %s\n", name, v);
+}
+
+static void checkGlError(const char* op) {
+ for (GLint error = glGetError(); error; error
+ = glGetError()) {
+ LOGI("after %s() glError (0x%x)\n", op, error);
+ }
+}
+
+static const char gVertexShader[] = "attribute vec4 vPosition;\n"
+ "void main() {\n"
+ " gl_Position = vPosition;\n"
+ "}\n";
+
+static const char gFragmentShader[] = "precision mediump float;\n"
+ "void main() {\n"
+ " gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0);\n"
+ "}\n";
+
+GLuint loadShader(GLenum shaderType, const char* pSource) {
+ GLuint shader = glCreateShader(shaderType);
+ if (shader) {
+ glShaderSource(shader, 1, &pSource, NULL);
+ glCompileShader(shader);
+ GLint compiled = 0;
+ glGetShaderiv(shader, GL_COMPILE_STATUS, &compiled);
+ if (!compiled) {
+ GLint infoLen = 0;
+ glGetShaderiv(shader, GL_INFO_LOG_LENGTH, &infoLen);
+ if (infoLen) {
+ char* buf = (char*) malloc(infoLen);
+ if (buf) {
+ glGetShaderInfoLog(shader, infoLen, NULL, buf);
+ LOGE("Could not compile shader %d:\n%s\n",
+ shaderType, buf);
+ free(buf);
+ }
+ glDeleteShader(shader);
+ shader = 0;
+ }
+ }
+ }
+ return shader;
+}
+
+GLuint createProgram(const char* pVertexSource, const char* pFragmentSource) {
+ GLuint vertexShader = loadShader(GL_VERTEX_SHADER, pVertexSource);
+ if (!vertexShader) {
+ return 0;
+ }
+
+ GLuint pixelShader = loadShader(GL_FRAGMENT_SHADER, pFragmentSource);
+ if (!pixelShader) {
+ return 0;
+ }
+
+ GLuint program = glCreateProgram();
+ if (program) {
+ glAttachShader(program, vertexShader);
+ checkGlError("glAttachShader");
+ glAttachShader(program, pixelShader);
+ checkGlError("glAttachShader");
+ glLinkProgram(program);
+ GLint linkStatus = GL_FALSE;
+ glGetProgramiv(program, GL_LINK_STATUS, &linkStatus);
+ if (linkStatus != GL_TRUE) {
+ GLint bufLength = 0;
+ glGetProgramiv(program, GL_INFO_LOG_LENGTH, &bufLength);
+ if (bufLength) {
+ char* buf = (char*) malloc(bufLength);
+ if (buf) {
+ glGetProgramInfoLog(program, bufLength, NULL, buf);
+ LOGE("Could not link program:\n%s\n", buf);
+ free(buf);
+ }
+ }
+ glDeleteProgram(program);
+ program = 0;
+ }
+ }
+ return program;
+}
+
+GLuint gProgram;
+GLuint gvPositionHandle;
+
+bool setupGraphics(int w, int h) {
+ printGLString("Version", GL_VERSION);
+ printGLString("Vendor", GL_VENDOR);
+ printGLString("Renderer", GL_RENDERER);
+ printGLString("Extensions", GL_EXTENSIONS);
+
+ LOGI("setupGraphics(%d, %d)", w, h);
+ gProgram = createProgram(gVertexShader, gFragmentShader);
+ if (!gProgram) {
+ LOGE("Could not create program.");
+ return false;
+ }
+ gvPositionHandle = glGetAttribLocation(gProgram, "vPosition");
+ checkGlError("glGetAttribLocation");
+ LOGI("glGetAttribLocation(\"vPosition\") = %d\n",
+ gvPositionHandle);
+
+ glViewport(0, 0, w, h);
+ checkGlError("glViewport");
+ return true;
+}
+
+const GLfloat gTriangleVertices[] = { 0.0f, 0.5f, -0.5f, -0.5f,
+ 0.5f, -0.5f };
+
+void renderFrame() {
+ static float grey;
+ grey += 0.01f;
+ if (grey > 1.0f) {
+ grey = 0.0f;
+ }
+ glClearColor(grey, grey, grey, 1.0f);
+ checkGlError("glClearColor");
+ glClear( GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT);
+ checkGlError("glClear");
+
+ glUseProgram(gProgram);
+ checkGlError("glUseProgram");
+
+ glVertexAttribPointer(gvPositionHandle, 2, GL_FLOAT, GL_FALSE, 0, gTriangleVertices);
+ checkGlError("glVertexAttribPointer");
+ glEnableVertexAttribArray(gvPositionHandle);
+ checkGlError("glEnableVertexAttribArray");
+ glDrawArrays(GL_TRIANGLES, 0, 3);
+ checkGlError("glDrawArrays");
+}
+
+extern "C" {
+ JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_init(JNIEnv * env, jobject obj, jint width, jint height);
+ JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_step(JNIEnv * env, jobject obj);
+};
+
+JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_init(JNIEnv * env, jobject obj, jint width, jint height)
+{
+ setupGraphics(width, height);
+}
+
+JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_step(JNIEnv * env, jobject obj)
+{
+ renderFrame();
+}
diff --git a/ndk/apps/hello-gl2/project/res/values/strings.xml b/ndk/apps/hello-gl2/project/res/values/strings.xml
new file mode 100644
index 0000000..e3f7331
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/res/values/strings.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2006, The Android Open Source 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.
+*/
+-->
+
+<!-- This file contains resource definitions for displayed strings, allowing
+ them to be changed based on the locale and options. -->
+
+<resources>
+ <!-- Simple strings. -->
+ <string name="gl2jni_activity">GL2JNI</string>
+
+</resources>
+
diff --git a/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNIActivity.java b/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNIActivity.java
new file mode 100644
index 0000000..c366a2c
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNIActivity.java
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2007 The Android Open Source 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.
+ */
+
+package com.android.gl2jni;
+
+import android.app.Activity;
+import android.os.Bundle;
+import android.util.Log;
+import android.view.WindowManager;
+
+import java.io.File;
+
+
+public class GL2JNIActivity extends Activity {
+
+ GL2JNIView mView;
+
+ @Override protected void onCreate(Bundle icicle) {
+ super.onCreate(icicle);
+ mView = new GL2JNIView(getApplication());
+ setContentView(mView);
+ }
+
+ @Override protected void onPause() {
+ super.onPause();
+ mView.onPause();
+ }
+
+ @Override protected void onResume() {
+ super.onResume();
+ mView.onResume();
+ }
+}
diff --git a/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNILib.java b/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNILib.java
new file mode 100644
index 0000000..040a984
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNILib.java
@@ -0,0 +1,33 @@
+/*
+ * Copyright (C) 2007 The Android Open Source 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.
+ */
+
+package com.android.gl2jni;
+
+// Wrapper for native library
+
+public class GL2JNILib {
+
+ static {
+ System.loadLibrary("gl2jni");
+ }
+
+ /**
+ * @param width the current view width
+ * @param height the current view height
+ */
+ public static native void init(int width, int height);
+ public static native void step();
+}
diff --git a/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNIView.java b/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNIView.java
new file mode 100644
index 0000000..72b1dfb
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNIView.java
@@ -0,0 +1,296 @@
+/*
+ * Copyright (C) 2009 The Android Open Source 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.
+ */
+
+package com.android.gl2jni;
+/*
+ * Copyright (C) 2008 The Android Open Source 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.
+ */
+
+
+import android.content.Context;
+import android.opengl.GLSurfaceView;
+import android.util.AttributeSet;
+import android.util.Log;
+import android.view.KeyEvent;
+import android.view.MotionEvent;
+
+import javax.microedition.khronos.egl.EGL10;
+import javax.microedition.khronos.egl.EGLConfig;
+import javax.microedition.khronos.egl.EGLContext;
+import javax.microedition.khronos.egl.EGLDisplay;
+import javax.microedition.khronos.opengles.GL10;
+
+/**
+ * An implementation of SurfaceView that uses the dedicated surface for
+ * displaying an OpenGL animation. This allows the animation to run in a
+ * separate thread, without requiring that it be driven by the update mechanism
+ * of the view hierarchy.
+ *
+ * The application-specific rendering code is delegated to a GLView.Renderer
+ * instance.
+ */
+class GL2JNIView extends GLSurfaceView {
+ private static String TAG = "GL2JNIView";
+
+ public GL2JNIView(Context context) {
+ super(context);
+ init(false, 0, 0);
+ }
+
+ public GL2JNIView(Context context, boolean translucent, int depth, int stencil) {
+ super(context);
+ init(translucent, depth, stencil);
+ }
+
+ private void init(boolean translucent, int depth, int stencil) {
+ setEGLContextFactory(new ContextFactory());
+ setEGLConfigChooser( translucent ?
+ new ConfigChooser(8,8,8,8, depth, stencil) :
+ new ConfigChooser(5,6,5,0, depth, stencil));
+ setRenderer(new Renderer());
+ }
+
+ private static class ContextFactory implements GLSurfaceView.EGLContextFactory {
+ private static int EGL_CONTEXT_CLIENT_VERSION = 0x3098;
+ public EGLContext createContext(EGL10 egl, EGLDisplay display, EGLConfig eglConfig) {
+ Log.w(TAG, "creating OpenGL ES 2.0 context");
+ checkEglError("Before eglCreateContext", egl);
+ int[] attrib_list = {EGL_CONTEXT_CLIENT_VERSION, 2, EGL10.EGL_NONE };
+ EGLContext context = egl.eglCreateContext(display, eglConfig, EGL10.EGL_NO_CONTEXT, attrib_list);
+ checkEglError("After eglCreateContext", egl);
+ return context;
+ }
+
+ public void destroyContext(EGL10 egl, EGLDisplay display, EGLContext context) {
+ egl.eglDestroyContext(display, context);
+ }
+ }
+
+ private static void checkEglError(String prompt, EGL10 egl) {
+ int error;
+ while ((error = egl.eglGetError()) != EGL10.EGL_SUCCESS) {
+ Log.e(TAG, String.format("%s: EGL error: 0x%x", prompt, error));
+ }
+ }
+
+ private static class ConfigChooser implements GLSurfaceView.EGLConfigChooser {
+ private static int EGL_OPENGL_ES2_BIT = 4;
+ private static int[] s_configAttribs2 =
+ {
+ EGL10.EGL_RED_SIZE, 4,
+ EGL10.EGL_GREEN_SIZE, 4,
+ EGL10.EGL_BLUE_SIZE, 4,
+ EGL10.EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT,
+ EGL10.EGL_NONE
+ };
+
+ public ConfigChooser(int r, int g, int b, int a, int depth, int stencil) {
+ mRedSize = r;
+ mGreenSize = g;
+ mBlueSize = b;
+ mAlphaSize = a;
+ mDepthSize = depth;
+ mStencilSize = stencil;
+ }
+
+ public EGLConfig chooseConfig(EGL10 egl, EGLDisplay display) {
+
+ int[] num_config = new int[1];
+ egl.eglChooseConfig(display, s_configAttribs2, null, 0, num_config);
+
+ int numConfigs = num_config[0];
+
+ if (numConfigs <= 0) {
+ throw new IllegalArgumentException("No configs match configSpec");
+ }
+ EGLConfig[] configs = new EGLConfig[numConfigs];
+ egl.eglChooseConfig(display, s_configAttribs2, configs, numConfigs, num_config);
+ // printConfigs(egl, display, configs);
+ return chooseConfig(egl, display, configs);
+ }
+
+ public EGLConfig chooseConfig(EGL10 egl, EGLDisplay display,
+ EGLConfig[] configs) {
+ EGLConfig closestConfig = null;
+ int closestDistance = 1000;
+ for(EGLConfig config : configs) {
+ int d = findConfigAttrib(egl, display, config,
+ EGL10.EGL_DEPTH_SIZE, 0);
+ int s = findConfigAttrib(egl, display, config,
+ EGL10.EGL_STENCIL_SIZE, 0);
+ if (d >= mDepthSize && s>= mStencilSize) {
+ int r = findConfigAttrib(egl, display, config,
+ EGL10.EGL_RED_SIZE, 0);
+ int g = findConfigAttrib(egl, display, config,
+ EGL10.EGL_GREEN_SIZE, 0);
+ int b = findConfigAttrib(egl, display, config,
+ EGL10.EGL_BLUE_SIZE, 0);
+ int a = findConfigAttrib(egl, display, config,
+ EGL10.EGL_ALPHA_SIZE, 0);
+ int distance = Math.abs(r - mRedSize)
+ + Math.abs(g - mGreenSize)
+ + Math.abs(b - mBlueSize)
+ + Math.abs(a - mAlphaSize);
+ if (distance < closestDistance) {
+ closestDistance = distance;
+ closestConfig = config;
+ }
+ }
+ }
+ return closestConfig;
+ }
+
+ private int findConfigAttrib(EGL10 egl, EGLDisplay display,
+ EGLConfig config, int attribute, int defaultValue) {
+
+ if (egl.eglGetConfigAttrib(display, config, attribute, mValue)) {
+ return mValue[0];
+ }
+ return defaultValue;
+ }
+
+ private void printConfigs(EGL10 egl, EGLDisplay display,
+ EGLConfig[] configs) {
+ int numConfigs = configs.length;
+ Log.w(TAG, String.format("%d configurations", numConfigs));
+ for (int i = 0; i < numConfigs; i++) {
+ Log.w(TAG, String.format("Configuration %d:\n", i));
+ printConfig(egl, display, configs[i]);
+ }
+ }
+
+ private void printConfig(EGL10 egl, EGLDisplay display,
+ EGLConfig config) {
+ int[] attributes = {
+ EGL10.EGL_BUFFER_SIZE,
+ EGL10.EGL_ALPHA_SIZE,
+ EGL10.EGL_BLUE_SIZE,
+ EGL10.EGL_GREEN_SIZE,
+ EGL10.EGL_RED_SIZE,
+ EGL10.EGL_DEPTH_SIZE,
+ EGL10.EGL_STENCIL_SIZE,
+ EGL10.EGL_CONFIG_CAVEAT,
+ EGL10.EGL_CONFIG_ID,
+ EGL10.EGL_LEVEL,
+ EGL10.EGL_MAX_PBUFFER_HEIGHT,
+ EGL10.EGL_MAX_PBUFFER_PIXELS,
+ EGL10.EGL_MAX_PBUFFER_WIDTH,
+ EGL10.EGL_NATIVE_RENDERABLE,
+ EGL10.EGL_NATIVE_VISUAL_ID,
+ EGL10.EGL_NATIVE_VISUAL_TYPE,
+ 0x3030, // EGL10.EGL_PRESERVED_RESOURCES,
+ EGL10.EGL_SAMPLES,
+ EGL10.EGL_SAMPLE_BUFFERS,
+ EGL10.EGL_SURFACE_TYPE,
+ EGL10.EGL_TRANSPARENT_TYPE,
+ EGL10.EGL_TRANSPARENT_RED_VALUE,
+ EGL10.EGL_TRANSPARENT_GREEN_VALUE,
+ EGL10.EGL_TRANSPARENT_BLUE_VALUE,
+ 0x3039, // EGL10.EGL_BIND_TO_TEXTURE_RGB,
+ 0x303A, // EGL10.EGL_BIND_TO_TEXTURE_RGBA,
+ 0x303B, // EGL10.EGL_MIN_SWAP_INTERVAL,
+ 0x303C, // EGL10.EGL_MAX_SWAP_INTERVAL,
+ EGL10.EGL_LUMINANCE_SIZE,
+ EGL10.EGL_ALPHA_MASK_SIZE,
+ EGL10.EGL_COLOR_BUFFER_TYPE,
+ EGL10.EGL_RENDERABLE_TYPE,
+ 0x3042 // EGL10.EGL_CONFORMANT
+ };
+ String[] names = {
+ "EGL_BUFFER_SIZE",
+ "EGL_ALPHA_SIZE",
+ "EGL_BLUE_SIZE",
+ "EGL_GREEN_SIZE",
+ "EGL_RED_SIZE",
+ "EGL_DEPTH_SIZE",
+ "EGL_STENCIL_SIZE",
+ "EGL_CONFIG_CAVEAT",
+ "EGL_CONFIG_ID",
+ "EGL_LEVEL",
+ "EGL_MAX_PBUFFER_HEIGHT",
+ "EGL_MAX_PBUFFER_PIXELS",
+ "EGL_MAX_PBUFFER_WIDTH",
+ "EGL_NATIVE_RENDERABLE",
+ "EGL_NATIVE_VISUAL_ID",
+ "EGL_NATIVE_VISUAL_TYPE",
+ "EGL_PRESERVED_RESOURCES",
+ "EGL_SAMPLES",
+ "EGL_SAMPLE_BUFFERS",
+ "EGL_SURFACE_TYPE",
+ "EGL_TRANSPARENT_TYPE",
+ "EGL_TRANSPARENT_RED_VALUE",
+ "EGL_TRANSPARENT_GREEN_VALUE",
+ "EGL_TRANSPARENT_BLUE_VALUE",
+ "EGL_BIND_TO_TEXTURE_RGB",
+ "EGL_BIND_TO_TEXTURE_RGBA",
+ "EGL_MIN_SWAP_INTERVAL",
+ "EGL_MAX_SWAP_INTERVAL",
+ "EGL_LUMINANCE_SIZE",
+ "EGL_ALPHA_MASK_SIZE",
+ "EGL_COLOR_BUFFER_TYPE",
+ "EGL_RENDERABLE_TYPE",
+ "EGL_CONFORMANT"
+ };
+ int[] value = new int[1];
+ for (int i = 0; i < attributes.length; i++) {
+ int attribute = attributes[i];
+ String name = names[i];
+ if ( egl.eglGetConfigAttrib(display, config, attribute, value)) {
+ Log.w(TAG, String.format(" %s: %d\n", name, value[0]));
+ } else {
+ // Log.w(TAG, String.format(" %s: failed\n", name));
+ while (egl.eglGetError() != EGL10.EGL_SUCCESS);
+ }
+ }
+ }
+
+ // Subclasses can adjust these values:
+ protected int mRedSize;
+ protected int mGreenSize;
+ protected int mBlueSize;
+ protected int mAlphaSize;
+ protected int mDepthSize;
+ protected int mStencilSize;
+ private int[] mValue = new int[1];
+ }
+
+ private static class Renderer implements GLSurfaceView.Renderer {
+ public void onDrawFrame(GL10 gl) {
+ GL2JNILib.step();
+ }
+
+ public void onSurfaceChanged(GL10 gl, int width, int height) {
+ GL2JNILib.init(width, height);
+ }
+
+ public void onSurfaceCreated(GL10 gl, EGLConfig config) {
+ // Do nothing.
+ }
+ }
+}
+
diff --git a/ndk/build/core/add-application.mk b/ndk/build/core/add-application.mk
index 42abae3..3505d1f 100644
--- a/ndk/build/core/add-application.mk
+++ b/ndk/build/core/add-application.mk
@@ -69,11 +69,14 @@
endif
endif
+# Check that the value of APP_PLATFORM corresponds to a known platform
+# If not, we're going to use the max supported platform value.
+#
_bad_platform := $(strip $(filter-out $(NDK_ALL_PLATFORMS),$(APP_PLATFORM)))
ifdef _bad_platform
- $(call __ndk_info,Application $(_name) targets platform '$(_bad_platform)')
- $(call __ndk_info,which is not supported by this release of the Android NDK)
- $(call __ndk_error,Aborting...)
+ $(call __ndk_info,Application $(_name) targets unknown platform '$(_bad_platform)')
+ APP_PLATFORM := android-$(NDK_MAX_PLATFORM_LEVEL)
+ $(call __ndk_info,Switching to $(APP_PLATFORM))
endif
# If APP_BUILD_SCRIPT is defined, check that the file exists.
diff --git a/ndk/build/core/definitions.mk b/ndk/build/core/definitions.mk
index 95bab67..ae9b540 100644
--- a/ndk/build/core/definitions.mk
+++ b/ndk/build/core/definitions.mk
@@ -262,7 +262,7 @@
# the list of variables that *may* be defined in Application.mk files
NDK_APP_VARS_OPTIONAL := APP_OPTIM APP_CPPFLAGS APP_CFLAGS APP_CXXFLAGS \
- APP_PLATFORM APP_BUILD_SCRIPT
+ APP_PLATFORM APP_BUILD_SCRIPT APP_ABI
# the list of all variables that may appear in an Application.mk file
NDK_APP_VARS := $(NDK_APP_VARS_REQUIRED) $(NDK_APP_VARS_OPTIONAL)
diff --git a/ndk/build/core/main.mk b/ndk/build/core/main.mk
index a460556..1c3442a 100644
--- a/ndk/build/core/main.mk
+++ b/ndk/build/core/main.mk
@@ -83,13 +83,31 @@
$(eval include $(BUILD_SYSTEM)/add-toolchain.mk)\
)
-#$(info ALL_TOOLCHAINS=$(ALL_TOOLCHAINS))
-NDK_TARGET_TOOLCHAIN := $(firstword $(NDK_ALL_TOOLCHAINS))
-$(call ndk_log, Default toolchain is $(NDK_TARGET_TOOLCHAIN))
-
NDK_ALL_TOOLCHAINS := $(call uniq,$(NDK_ALL_TOOLCHAINS))
NDK_ALL_ABIS := $(call uniq,$(NDK_ALL_ABIS))
+# The default toolchain is now arm-eabi-4.4.0, however its
+# C++ compiler is a tad bit more pedantic with certain
+# constructs (e.g. templates) so allow users to switch back
+# to the old 4.2.1 instead if they really want to.
+#
+# NOTE: you won't get armeabi-v7a support though !
+#
+NDK_TOOLCHAIN := $(strip $(NDK_TOOLCHAIN))
+ifndef NDK_TOOLCHAIN
+ NDK_TARGET_TOOLCHAIN := arm-eabi-4.4.0
+ $(call ndk_log, Default toolchain is $(NDK_TARGET_TOOLCHAIN))
+else
+ # check that the toolchain name is supported
+ $(if $(filter-out $(NDK_ALL_TOOLCHAINS),$(NDK_TOOLCHAIN)),\
+ $(call __ndk_info,NDK_TOOLCHAIN is defined to the unsupported value $(NDK_TOOLCHAIN)) \
+ $(call __ndk_info,Please use one of the following values: $(NDK_ALL_TOOLCHAINS))\
+ $(call __ndk_error,Aborting)\
+ ,)
+ NDK_TARGET_TOOLCHAIN=$(NDK_TOOLCHAIN)
+ $(call ndk_log, Using specific toolchain $(NDK_TARGET_TOOLCHAIN))
+endif
+
$(call ndk_log, This NDK supports the following toolchains and target ABIs:)
$(foreach tc,$(NDK_ALL_TOOLCHAINS),\
$(call ndk_log, $(space)$(space)$(tc): $(NDK_TOOLCHAIN.$(tc).abis))\
@@ -114,6 +132,18 @@
$(eval include $(BUILD_SYSTEM)/add-platform.mk)\
)
+# we're going to find the maximum platform number of the form android-<number>
+# ignore others, which could correspond to special and experimental cases
+NDK_ALL_PLATFORM_LEVELS := $(filter android-%,$(NDK_ALL_PLATFORMS))
+NDK_ALL_PLATFORM_LEVELS := $(patsubst android-%,%,$(NDK_ALL_PLATFORM_LEVELS))
+$(call ndk_log,Found stable platform levels: $(NDK_ALL_PLATFORM_LEVELS))
+
+NDK_MAX_PLATFORM_LEVEL := 3
+$(foreach level,$(NDK_ALL_PLATFORM_LEVELS),\
+ $(eval NDK_MAX_PLATFORM_LEVEL := $$(call max,$$(NDK_MAX_PLATFORM_LEVEL),$$(level)))\
+)
+$(call ndk_log,Found max platform level: $(NDK_MAX_PLATFORM_LEVEL))
+
# ====================================================================
#
# Read all application configuration files
diff --git a/ndk/build/core/setup-abi.mk b/ndk/build/core/setup-abi.mk
new file mode 100644
index 0000000..f548823
--- /dev/null
+++ b/ndk/build/core/setup-abi.mk
@@ -0,0 +1,28 @@
+# Copyright (C) 2009 The Android Open Source 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.
+#
+
+# this file is included multiple times by build/core/setup-app.mk
+#
+
+$(call ndk_log,Building application '$(NDK_APP_NAME)' for ABI '$(TARGET_ARCH_ABI)')
+
+TARGET_ARCH := arm
+
+TARGET_OUT := $(NDK_APP_OUT)/$(_app)/$(TARGET_ARCH_ABI)
+TARGET_OBJS := $(TARGET_OUT)/objs
+
+TARGET_GDB_SETUP := $(TARGET_OUT)/setup.gdb
+
+include $(BUILD_SYSTEM)/setup-toolchain.mk
diff --git a/ndk/build/core/setup-app.mk b/ndk/build/core/setup-app.mk
index 8513482..d835e6f 100644
--- a/ndk/build/core/setup-app.mk
+++ b/ndk/build/core/setup-app.mk
@@ -21,21 +21,6 @@
_map := NDK_APP.$(_app)
-# which platform/abi/toolchain are we going to use?
-TARGET_PLATFORM := $(call get,$(_map),APP_PLATFORM)
-TARGET_ARCH_ABI := arm
-TARGET_ARCH := arm
-TARGET_TOOLCHAIN := $(NDK_TARGET_TOOLCHAIN)
-
-# the location of generated files for this app
-HOST_OUT := $(NDK_APP_OUT)/$(_app)/$(HOST_TAG)
-HOST_OBJS := $(HOST_OUT)/objs
-
-TARGET_OUT := $(NDK_APP_OUT)/$(_app)/$(TARGET_ABI)
-TARGET_OBJS := $(TARGET_OUT)/objs
-
-TARGET_GDB_SETUP := $(TARGET_OUT)/setup.gdb
-
# ok, let's parse all Android.mk source files in order to build
# the modules for this app.
#
@@ -62,4 +47,33 @@
ndk-app-$(_app): $(NDK_APP_MODULES)
all: ndk-app-$(_app)
-include $(BUILD_SYSTEM)/setup-toolchain.mk
+# which platform/abi/toolchain are we going to use?
+TARGET_PLATFORM := $(call get,$(_map),APP_PLATFORM)
+
+# the location of generated files for this app
+HOST_OUT := $(NDK_APP_OUT)/$(_app)/$(HOST_TAG)
+HOST_OBJS := $(HOST_OUT)/objs
+
+# the target to use
+TARGET_TOOLCHAIN := $(NDK_TARGET_TOOLCHAIN)
+
+APP_ABI := $(strip $(APP_ABI))
+ifndef APP_ABI
+ # the default ABI for now is armeabi
+ APP_ABI := armeabi
+endif
+
+# check the target ABIs for this application
+_bad_abis = $(strip $(filter-out $(NDK_ALL_ABIS),$(APP_ABI)))
+ifneq ($(_bad_abis),)
+ $(info _bad_abis = '$(_bad_abis)')
+ $(call __ndk_info,NDK Application '$(_app)' targets unknown ABI(s): $(_bad_abis))
+ $(call __ndk_info,Please fix the APP_ABI definition in $(NDK_APP_APPLICATION_MK))
+ $(call __ndk_error,Aborting)
+endif
+
+$(foreach _abi,$(APP_ABI),\
+ $(eval TARGET_ARCH_ABI := $(_abi))\
+ $(eval include $(BUILD_SYSTEM)/setup-abi.mk) \
+)
+
diff --git a/ndk/build/core/setup-toolchain.mk b/ndk/build/core/setup-toolchain.mk
index 352585e..e5d4e82 100644
--- a/ndk/build/core/setup-toolchain.mk
+++ b/ndk/build/core/setup-toolchain.mk
@@ -13,13 +13,21 @@
# limitations under the License.
#
-# this file is included repeatedly from build/core/main.mk and is used
+# this file is included repeatedly from build/core/setup-abi.mk and is used
# to setup the target toolchain for a given platform/abi combination.
#
$(call assert-defined,TARGET_TOOLCHAIN TARGET_PLATFORM TARGET_ARCH TARGET_ARCH_ABI)
$(call assert-defined,NDK_APPS)
+# Check that the toolchain supports the current ABI
+$(if $(filter-out $(NDK_TOOLCHAIN.$(NDK_TARGET_TOOLCHAIN).abis),$(TARGET_ARCH_ABI)),\
+ $(call __ndk_info,The $(NDK_TARGET_TOOLCHAIN) toolchain does not support the $(TARGET_ARCH_ABI) ABI.)\
+ $(call __ndk_info,Please modify the APP_ABI definition in $(NDK_APP_APPLICATION_MK) to fix this)\
+ $(call __ndk_info,Valid ABIs values for $(NDK_TARGET_TOOLCHAIN) are: $(NDK_TARGET_TOOLCHAIN.$(NDK_TOOLCHAIN).abis))\
+ $(call __ndk_error,Aborting)\
+,)
+
TARGET_ABI := $(TARGET_PLATFORM)-$(TARGET_ARCH_ABI)
# setup sysroot-related variables. The SYSROOT point to a directory
@@ -27,7 +35,7 @@
# some libraries and object files used for linking the generated
# target files properly.
#
-SYSROOT := build/platforms/$(TARGET_PLATFORM)/arch-$(TARGET_ARCH_ABI)
+SYSROOT := build/platforms/$(TARGET_PLATFORM)/arch-$(TARGET_ARCH)
TARGET_CRTBEGIN_STATIC_O := $(SYSROOT)/usr/lib/crtbegin_static.o
TARGET_CRTBEGIN_DYNAMIC_O := $(SYSROOT)/usr/lib/crtbegin_dynamic.o
@@ -40,7 +48,7 @@
include $(NDK_TOOLCHAIN.$(TARGET_TOOLCHAIN).setup)
# compute NDK_APP_DEST as the destination directory for the generated files
-NDK_APP_DEST := $(NDK_APP_PROJECT_PATH)/libs/$(TARGET_ABI_SUBDIR)
+NDK_APP_DEST := $(NDK_APP_PROJECT_PATH)/libs/$(TARGET_ARCH_ABI)
# free the dictionary of LOCAL_MODULE definitions
$(call modules-clear)
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/alloca.h b/ndk/build/platforms/android-3/arch-arm/usr/include/alloca.h
deleted file mode 120000
index ac859df..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/alloca.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/alloca.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/alloca.h b/ndk/build/platforms/android-3/arch-arm/usr/include/alloca.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/alloca.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/alloca.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/android/log.h b/ndk/build/platforms/android-3/arch-arm/usr/include/android/log.h
deleted file mode 120000
index da91a66..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/android/log.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/android/log.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/android/log.h b/ndk/build/platforms/android-3/arch-arm/usr/include/android/log.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/android/log.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/android/log.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/inet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/inet.h
deleted file mode 120000
index 760a19d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/inet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/arpa/inet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/arpa/inet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/inet.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/arpa/inet.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/arpa/inet.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/nameser.h b/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/nameser.h
deleted file mode 120000
index 73f9311..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/nameser.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/arpa/nameser.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/arpa/nameser.h b/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/nameser.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/arpa/nameser.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/arpa/nameser.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/4level-fixup.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/4level-fixup.h
deleted file mode 120000
index 4493a92..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/4level-fixup.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/4level-fixup.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/4level-fixup.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/4level-fixup.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/4level-fixup.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/4level-fixup.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/audit_dir_write.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/audit_dir_write.h
deleted file mode 120000
index 6576f52..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/audit_dir_write.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/audit_dir_write.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/audit_dir_write.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/audit_dir_write.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/audit_dir_write.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/audit_dir_write.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/__ffs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/__ffs.h
deleted file mode 120000
index 9a68edc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/__ffs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/__ffs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/__ffs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/__ffs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/__ffs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/__ffs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/atomic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/atomic.h
deleted file mode 120000
index 32afeb4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/atomic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/atomic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/atomic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/atomic.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/atomic.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/atomic.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/ffz.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/ffz.h
deleted file mode 120000
index 50c5214..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/ffz.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/ffz.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/ffz.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/ffz.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/ffz.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/ffz.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/find.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/find.h
deleted file mode 120000
index 9b40acd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/find.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/find.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/find.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/find.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/find.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/find.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls.h
deleted file mode 120000
index 5171887..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/fls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls64.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls64.h
deleted file mode 120000
index 8728e6a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls64.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/fls64.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls64.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls64.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls64.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls64.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/le.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/le.h
deleted file mode 120000
index 91b46c7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/le.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/le.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/le.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/le.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/le.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/le.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/non-atomic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
deleted file mode 120000
index 177973e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/non-atomic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/non-atomic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/non-atomic.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bug.h
deleted file mode 120000
index d898f3a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/bug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bug.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bug.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bug.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/cputime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/cputime.h
deleted file mode 120000
index 7892fb4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/cputime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/cputime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/cputime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/cputime.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/cputime.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/cputime.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/emergency-restart.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/emergency-restart.h
deleted file mode 120000
index 3005c74..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/emergency-restart.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/emergency-restart.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/emergency-restart.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/emergency-restart.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/emergency-restart.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/emergency-restart.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno-base.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno-base.h
deleted file mode 120000
index 7b7d9bd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno-base.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/errno-base.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/errno-base.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno-base.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/errno-base.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno-base.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno.h
deleted file mode 120000
index bdd6dd4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/errno.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/fcntl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/fcntl.h
deleted file mode 120000
index 3506aa8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/fcntl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/fcntl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/fcntl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/fcntl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/fcntl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/fcntl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/futex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/futex.h
deleted file mode 120000
index cbd47bf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/futex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/futex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/futex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/futex.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/futex.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/futex.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ioctl.h
deleted file mode 120000
index 7a11623..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/ioctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ioctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ipc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ipc.h
deleted file mode 120000
index 339894e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ipc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/ipc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/ipc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ipc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/ipc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ipc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/local.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/local.h
deleted file mode 120000
index 0e9344d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/local.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/local.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/local.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/local.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/local.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/local.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/memory_model.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/memory_model.h
deleted file mode 120000
index 3bbc82b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/memory_model.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/memory_model.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/memory_model.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/memory_model.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/memory_model.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/memory_model.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mman.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mman.h
deleted file mode 120000
index fbab125..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mman.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/mman.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/mman.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mman.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/mman.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mman.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mutex-xchg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mutex-xchg.h
deleted file mode 120000
index c7bc238..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mutex-xchg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/mutex-xchg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/mutex-xchg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mutex-xchg.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/mutex-xchg.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mutex-xchg.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/percpu.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/percpu.h
deleted file mode 120000
index 2d899db..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/percpu.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/percpu.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/percpu.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/percpu.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/percpu.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/percpu.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable-nopud.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable-nopud.h
deleted file mode 120000
index ac2157e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable-nopud.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/pgtable-nopud.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/pgtable-nopud.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable-nopud.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/pgtable-nopud.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable-nopud.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable.h
deleted file mode 120000
index 4c70646..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/pgtable.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/pgtable.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/pgtable.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/poll.h
deleted file mode 120000
index 2bd359a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/poll.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/poll.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/poll.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/resource.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/resource.h
deleted file mode 120000
index 28f331a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/resource.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/resource.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/resource.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/resource.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/resource.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/resource.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/sections.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/sections.h
deleted file mode 120000
index c6885f3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/sections.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/sections.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/sections.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/sections.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/sections.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/sections.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/siginfo.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/siginfo.h
deleted file mode 120000
index d38f211..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/siginfo.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/siginfo.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/siginfo.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/siginfo.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/siginfo.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/signal.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/signal.h
deleted file mode 120000
index 05ca352..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/signal.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/signal.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/signal.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/signal.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/signal.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/signal.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/tlb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/tlb.h
deleted file mode 120000
index 94baa95..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/tlb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/tlb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/tlb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/tlb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/tlb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/tlb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/topology.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/topology.h
deleted file mode 120000
index e85b48f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/topology.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/topology.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/topology.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/topology.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/topology.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/topology.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/xor.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/xor.h
deleted file mode 120000
index baf2118..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/xor.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/xor.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/xor.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/xor.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/xor.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/xor.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/assert.h b/ndk/build/platforms/android-3/arch-arm/usr/include/assert.h
deleted file mode 120000
index 1572c5b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/assert.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/assert.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/assert.h b/ndk/build/platforms/android-3/arch-arm/usr/include/assert.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/assert.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/assert.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/byteswap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/byteswap.h
deleted file mode 120000
index 153ee73..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/byteswap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/byteswap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/byteswap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/byteswap.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/byteswap.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/byteswap.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/cstddef b/ndk/build/platforms/android-3/arch-arm/usr/include/cstddef
deleted file mode 120000
index cec20fd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/cstddef
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/cstddef
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/cstddef b/ndk/build/platforms/android-3/arch-arm/usr/include/cstddef
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/cstddef
rename to ndk/build/platforms/android-3/arch-arm/usr/include/cstddef
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/ctype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/ctype.h
deleted file mode 120000
index f1b315c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/ctype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/ctype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/ctype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/ctype.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/ctype.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/ctype.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/dirent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/dirent.h
deleted file mode 120000
index 315be03..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/dirent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/dirent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/dirent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/dirent.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/dirent.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/dirent.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/dlfcn.h b/ndk/build/platforms/android-3/arch-arm/usr/include/dlfcn.h
deleted file mode 120000
index 5748e5a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/dlfcn.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/dlfcn.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/dlfcn.h b/ndk/build/platforms/android-3/arch-arm/usr/include/dlfcn.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/dlfcn.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/dlfcn.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/elf.h
deleted file mode 120000
index f4e2f5e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/elf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/elf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/elf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/endian.h
index 04204ed..475b48c 100644
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/endian.h
+++ b/ndk/build/platforms/android-3/arch-arm/usr/include/endian.h
@@ -1,10 +1,33 @@
-/* $OpenBSD: endian.h,v 1.3 2005/12/13 00:35:23 millert Exp $ */
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _ENDIAN_H_
+#define _ENDIAN_H_
-#ifdef __ARMEB__
-#define _BYTE_ORDER _BIG_ENDIAN
-#else
-#define _BYTE_ORDER _LITTLE_ENDIAN
-#endif
-#define __STRICT_ALIGNMENT
-#include <sys/types.h>
#include <sys/endian.h>
+
+#endif /* _ENDIAN_H_ */
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/err.h b/ndk/build/platforms/android-3/arch-arm/usr/include/err.h
deleted file mode 120000
index de81816..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/err.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/err.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/err.h b/ndk/build/platforms/android-3/arch-arm/usr/include/err.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/err.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/err.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/errno.h
deleted file mode 120000
index 2e638ba..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/errno.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/errno.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/errno.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/fcntl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/fcntl.h
deleted file mode 120000
index cb8c1df..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/fcntl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/fcntl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/fcntl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/fcntl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/fcntl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/fcntl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/features.h b/ndk/build/platforms/android-3/arch-arm/usr/include/features.h
deleted file mode 120000
index 6587ebd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/features.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/features.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/features.h b/ndk/build/platforms/android-3/arch-arm/usr/include/features.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/features.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/features.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/fnmatch.h b/ndk/build/platforms/android-3/arch-arm/usr/include/fnmatch.h
deleted file mode 120000
index 52c0687..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/fnmatch.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/fnmatch.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/fnmatch.h b/ndk/build/platforms/android-3/arch-arm/usr/include/fnmatch.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/fnmatch.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/fnmatch.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/getopt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/getopt.h
deleted file mode 120000
index 857cf27..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/getopt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/getopt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/getopt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/getopt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/getopt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/getopt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/grp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/grp.h
deleted file mode 120000
index c599451..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/grp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/grp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/grp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/grp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/grp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/grp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/inttypes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/inttypes.h
deleted file mode 120000
index 5283d60..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/inttypes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/inttypes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/inttypes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/inttypes.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/inttypes.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/inttypes.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/jni.h b/ndk/build/platforms/android-3/arch-arm/usr/include/jni.h
deleted file mode 120000
index e49af21..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/jni.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/jni.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/jni.h b/ndk/build/platforms/android-3/arch-arm/usr/include/jni.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/jni.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/jni.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/lastlog.h b/ndk/build/platforms/android-3/arch-arm/usr/include/lastlog.h
deleted file mode 120000
index fe63cd3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/lastlog.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/lastlog.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/lastlog.h b/ndk/build/platforms/android-3/arch-arm/usr/include/lastlog.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/lastlog.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/lastlog.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/libgen.h b/ndk/build/platforms/android-3/arch-arm/usr/include/libgen.h
deleted file mode 120000
index 0f626b6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/libgen.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/libgen.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/libgen.h b/ndk/build/platforms/android-3/arch-arm/usr/include/libgen.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/libgen.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/libgen.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/limits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/limits.h
deleted file mode 120000
index 60f67bf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/limits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/limits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/limits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/limits.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/limits.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/limits.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/a.out.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/a.out.h
deleted file mode 120000
index e1bffda..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/a.out.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/a.out.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/a.out.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/a.out.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/a.out.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/a.out.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/aio_abi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/aio_abi.h
deleted file mode 120000
index cd94485..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/aio_abi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/aio_abi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/aio_abi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/aio_abi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/aio_abi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/aio_abi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/akm8976.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/akm8976.h
deleted file mode 120000
index 1d8b858..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/akm8976.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/akm8976.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/akm8976.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/akm8976.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/akm8976.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/akm8976.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_alarm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_alarm.h
deleted file mode 120000
index 383aabd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_alarm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/android_alarm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/android_alarm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_alarm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/android_alarm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_alarm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_pmem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_pmem.h
deleted file mode 120000
index 2485ad8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_pmem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/android_pmem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/android_pmem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_pmem.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/android_pmem.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_pmem.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_power.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_power.h
deleted file mode 120000
index 05f970a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_power.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/android_power.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/android_power.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_power.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/android_power.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_power.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/apm_bios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/apm_bios.h
deleted file mode 120000
index cbcfb5a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/apm_bios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/apm_bios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/apm_bios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/apm_bios.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/apm_bios.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/apm_bios.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ashmem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ashmem.h
deleted file mode 120000
index 3cc1881..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ashmem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ashmem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ashmem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ashmem.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ashmem.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ashmem.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ata.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ata.h
deleted file mode 120000
index 4640b5f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ata.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ata.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ata.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ata.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ata.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ata.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atm.h
deleted file mode 120000
index 377242f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/atm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/atm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/atm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmapi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmapi.h
deleted file mode 120000
index 0d7f085..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmapi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmapi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmapi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmapi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/atmapi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmapi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmdev.h
deleted file mode 120000
index f1f9a5f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/atmdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmioc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmioc.h
deleted file mode 120000
index 3b1e711..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmioc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmioc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmioc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmioc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/atmioc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmioc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmppp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmppp.h
deleted file mode 120000
index 785c8fb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmppp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmppp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmppp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmppp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/atmppp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmppp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmsap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmsap.h
deleted file mode 120000
index bc0f5a8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmsap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmsap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmsap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmsap.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/atmsap.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmsap.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/attribute_container.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/attribute_container.h
deleted file mode 120000
index 3834481..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/attribute_container.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/attribute_container.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/attribute_container.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/attribute_container.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/attribute_container.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/attribute_container.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auto_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auto_fs.h
deleted file mode 120000
index 8d3e7b9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auto_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/auto_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/auto_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auto_fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/auto_fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/auto_fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/autoconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/autoconf.h
deleted file mode 120000
index 41a58f5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/autoconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/autoconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/autoconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/autoconf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/autoconf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/autoconf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auxvec.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auxvec.h
deleted file mode 120000
index 5602220..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auxvec.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/auxvec.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/auxvec.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auxvec.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/auxvec.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/auxvec.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/backing-dev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/backing-dev.h
deleted file mode 120000
index 427296e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/backing-dev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/backing-dev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/backing-dev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/backing-dev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/backing-dev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/backing-dev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binder.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binder.h
deleted file mode 120000
index 39fcca7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binder.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/binder.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/binder.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binder.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/binder.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/binder.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binfmts.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binfmts.h
deleted file mode 120000
index d938c2f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binfmts.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/binfmts.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/binfmts.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binfmts.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/binfmts.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/binfmts.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bio.h
deleted file mode 120000
index 9a8ee71..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/bio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/bio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/bio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/bio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitmap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitmap.h
deleted file mode 120000
index 5db6297..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitmap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/bitmap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/bitmap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitmap.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/bitmap.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitmap.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitops.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitops.h
deleted file mode 120000
index 5d0fcbb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitops.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/bitops.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/bitops.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitops.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/bitops.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitops.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkdev.h
deleted file mode 120000
index fb45957..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/blkdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/blkdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/blkdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkpg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkpg.h
deleted file mode 120000
index bc5f38f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkpg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/blkpg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/blkpg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkpg.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/blkpg.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkpg.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blockgroup_lock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blockgroup_lock.h
deleted file mode 120000
index 587f7f1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blockgroup_lock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/blockgroup_lock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/blockgroup_lock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blockgroup_lock.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/blockgroup_lock.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/blockgroup_lock.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/big_endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/big_endian.h
deleted file mode 120000
index ce97246..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/big_endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/big_endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/big_endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/big_endian.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/byteorder/big_endian.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/big_endian.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/generic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/generic.h
deleted file mode 120000
index d865701..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/generic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/generic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/generic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/generic.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/byteorder/generic.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/generic.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/little_endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/little_endian.h
deleted file mode 120000
index 9b117fa..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/little_endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/little_endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/little_endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/little_endian.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/byteorder/little_endian.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/little_endian.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swab.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swab.h
deleted file mode 120000
index b3da56e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swab.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/swab.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/swab.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swab.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/byteorder/swab.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swab.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swabb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swabb.h
deleted file mode 120000
index d6d7ade..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swabb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/swabb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/swabb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swabb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/byteorder/swabb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swabb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cache.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cache.h
deleted file mode 120000
index 74ed7c9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cache.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cache.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/cache.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cache.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/cache.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/cache.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/calc64.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/calc64.h
deleted file mode 120000
index e12ad54..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/calc64.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/calc64.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/calc64.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/calc64.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/calc64.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/calc64.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capability.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capability.h
deleted file mode 120000
index 9674918..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capability.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/capability.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/capability.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capability.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/capability.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/capability.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capi.h
deleted file mode 120000
index e937bc1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/capi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/capi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/capi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/capi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdev.h
deleted file mode 120000
index aa3f937..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/cdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/cdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdrom.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdrom.h
deleted file mode 120000
index f8a7cfe..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdrom.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cdrom.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/cdrom.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdrom.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/cdrom.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdrom.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/circ_buf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/circ_buf.h
deleted file mode 120000
index ada0bca..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/circ_buf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/circ_buf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/circ_buf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/circ_buf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/circ_buf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/circ_buf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/clk.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/clk.h
deleted file mode 120000
index 246f4ad..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/clk.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/clk.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/clk.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/clk.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/clk.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/clk.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda.h
deleted file mode 120000
index e577be5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/coda.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/coda.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/coda.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda_fs_i.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda_fs_i.h
deleted file mode 120000
index bd7a507..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda_fs_i.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/coda_fs_i.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/coda_fs_i.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda_fs_i.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/coda_fs_i.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda_fs_i.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compat.h
deleted file mode 120000
index c323a32..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/compat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/compat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compat.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/compat.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/compat.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler-gcc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler-gcc.h
deleted file mode 120000
index 6609cf6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler-gcc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/compiler-gcc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/compiler-gcc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler-gcc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/compiler-gcc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler-gcc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler.h
deleted file mode 120000
index c3c0a7c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/compiler.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/compiler.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/compiler.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/completion.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/completion.h
deleted file mode 120000
index af28044..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/completion.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/completion.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/completion.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/completion.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/completion.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/completion.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/config.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/config.h
deleted file mode 120000
index 71028f6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/config.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/config.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/config.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/config.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/config.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/config.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/console_struct.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/console_struct.h
deleted file mode 120000
index 7aa8514..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/console_struct.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/console_struct.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/console_struct.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/console_struct.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/console_struct.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/console_struct.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpu.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpu.h
deleted file mode 120000
index 2608247..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpu.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cpu.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/cpu.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpu.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/cpu.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpu.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpumask.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpumask.h
deleted file mode 120000
index c8f6de0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpumask.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cpumask.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/cpumask.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpumask.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/cpumask.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpumask.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ctype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ctype.h
deleted file mode 120000
index e008d1e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ctype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ctype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ctype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ctype.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ctype.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ctype.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dccp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dccp.h
deleted file mode 120000
index bc11d40..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dccp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dccp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/dccp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dccp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/dccp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/dccp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/debug_locks.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/debug_locks.h
deleted file mode 120000
index 561a5bc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/debug_locks.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/debug_locks.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/debug_locks.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/debug_locks.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/debug_locks.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/debug_locks.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/delay.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/delay.h
deleted file mode 120000
index d934a13..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/delay.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/delay.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/delay.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/delay.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/delay.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/delay.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/device.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/device.h
deleted file mode 120000
index 2440aba..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/device.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/device.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/device.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/device.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/device.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/device.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dirent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dirent.h
deleted file mode 120000
index f16f4a4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dirent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dirent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/dirent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dirent.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/dirent.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/dirent.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dm-ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dm-ioctl.h
deleted file mode 120000
index d7305d2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dm-ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dm-ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/dm-ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dm-ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/dm-ioctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/dm-ioctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dma-mapping.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dma-mapping.h
deleted file mode 120000
index d8f5664..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dma-mapping.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dma-mapping.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/dma-mapping.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dma-mapping.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/dma-mapping.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/dma-mapping.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dmaengine.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dmaengine.h
deleted file mode 120000
index 31efa05..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dmaengine.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dmaengine.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/dmaengine.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dmaengine.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/dmaengine.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/dmaengine.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_dir.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_dir.h
deleted file mode 120000
index 5aae574..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_dir.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/efs_dir.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/efs_dir.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_dir.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/efs_dir.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_dir.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_i.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_i.h
deleted file mode 120000
index 1ea12f6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_i.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/efs_fs_i.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/efs_fs_i.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_i.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/efs_fs_i.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_i.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_sb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_sb.h
deleted file mode 120000
index 9ece7e1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_sb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/efs_fs_sb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/efs_fs_sb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_sb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/efs_fs_sb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_sb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elevator.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elevator.h
deleted file mode 120000
index a15375f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elevator.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/elevator.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/elevator.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elevator.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/elevator.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/elevator.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf-em.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf-em.h
deleted file mode 120000
index a70534c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf-em.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/elf-em.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/elf-em.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf-em.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/elf-em.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf-em.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf.h
deleted file mode 120000
index 4455674..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/elf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/err.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/err.h
deleted file mode 120000
index 7bc3976..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/err.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/err.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/err.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/err.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/err.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/err.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errno.h
deleted file mode 120000
index 17901cf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errno.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/errno.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/errno.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errqueue.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errqueue.h
deleted file mode 120000
index f857679..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errqueue.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/errqueue.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/errqueue.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errqueue.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/errqueue.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/errqueue.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/etherdevice.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/etherdevice.h
deleted file mode 120000
index c6fc657..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/etherdevice.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/etherdevice.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/etherdevice.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/etherdevice.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/etherdevice.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/etherdevice.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext2_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext2_fs.h
deleted file mode 120000
index 6d1ef48..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext2_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ext2_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ext2_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext2_fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ext2_fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext2_fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext3_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext3_fs.h
deleted file mode 120000
index 401d884..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext3_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ext3_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ext3_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext3_fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ext3_fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext3_fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fadvise.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fadvise.h
deleted file mode 120000
index 28391d0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fadvise.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fadvise.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/fadvise.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fadvise.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/fadvise.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/fadvise.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fb.h
deleted file mode 120000
index 678e85b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/fb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/fb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/fb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fcntl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fcntl.h
deleted file mode 120000
index 628a481..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fcntl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fcntl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/fcntl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fcntl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/fcntl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/fcntl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fd.h
deleted file mode 120000
index 27d6d08..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/fd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/fd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/fd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/file.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/file.h
deleted file mode 120000
index d063b5e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/file.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/file.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/file.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/file.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/file.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/file.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/filter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/filter.h
deleted file mode 120000
index 54c78a3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/filter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/filter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/filter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/filter.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/filter.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/filter.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fs.h
deleted file mode 120000
index c72717d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ftape.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ftape.h
deleted file mode 120000
index 59efd2b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ftape.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ftape.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ftape.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ftape.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ftape.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ftape.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/futex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/futex.h
deleted file mode 120000
index cbfdedb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/futex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/futex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/futex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/futex.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/futex.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/futex.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/genhd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/genhd.h
deleted file mode 120000
index 4182ac6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/genhd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/genhd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/genhd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/genhd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/genhd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/genhd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/gfp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/gfp.h
deleted file mode 120000
index 955489e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/gfp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/gfp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/gfp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/gfp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/gfp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/gfp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hardirq.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hardirq.h
deleted file mode 120000
index 01128bd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hardirq.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hardirq.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/hardirq.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hardirq.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/hardirq.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/hardirq.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdlc/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdlc/ioctl.h
deleted file mode 120000
index 7679e36..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdlc/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/hdlc/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/hdlc/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdlc/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/hdlc/ioctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdlc/ioctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdreg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdreg.h
deleted file mode 120000
index 35aea04..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdreg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hdreg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/hdreg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdreg.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/hdreg.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdreg.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdsmart.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdsmart.h
deleted file mode 120000
index 383f58c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdsmart.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hdsmart.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/hdsmart.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdsmart.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/hdsmart.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdsmart.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/highmem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/highmem.h
deleted file mode 120000
index 0f41fc7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/highmem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/highmem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/highmem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/highmem.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/highmem.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/highmem.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hil.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hil.h
deleted file mode 120000
index 2bee8bb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hil.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hil.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/hil.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hil.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/hil.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/hil.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/i2c.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/i2c.h
deleted file mode 120000
index 514ff43..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/i2c.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/i2c.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/i2c.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/i2c.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/i2c.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/i2c.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/icmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/icmp.h
deleted file mode 120000
index 87771a7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/icmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/icmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/icmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/icmp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/icmp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/icmp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if.h
deleted file mode 120000
index 176aae6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arcnet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arcnet.h
deleted file mode 120000
index 0d04ae3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arcnet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_arcnet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_arcnet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arcnet.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_arcnet.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arcnet.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arp.h
deleted file mode 120000
index 536a142..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_arp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_arp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_arp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_bridge.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_bridge.h
deleted file mode 120000
index ad36ad5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_bridge.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_bridge.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_bridge.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_bridge.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_bridge.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_bridge.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ether.h
deleted file mode 120000
index 4dc3348..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ether.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_ether.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ether.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fc.h
deleted file mode 120000
index 087ec19..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_fc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_fc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_fc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fddi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fddi.h
deleted file mode 120000
index 6c439ad..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fddi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_fddi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_fddi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fddi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_fddi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fddi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_hippi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_hippi.h
deleted file mode 120000
index f4febf9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_hippi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_hippi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_hippi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_hippi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_hippi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_hippi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_packet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_packet.h
deleted file mode 120000
index d48d404..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_packet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_packet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_packet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_packet.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_packet.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_packet.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ppp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ppp.h
deleted file mode 120000
index 1c0292e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ppp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_ppp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_ppp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ppp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_ppp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ppp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tr.h
deleted file mode 120000
index 115cd17..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_tr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_tr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tr.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_tr.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tr.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tun.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tun.h
deleted file mode 120000
index f127941..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tun.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_tun.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_tun.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tun.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_tun.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tun.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_vlan.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_vlan.h
deleted file mode 120000
index f20fce0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_vlan.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_vlan.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_vlan.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_vlan.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_vlan.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_vlan.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in.h
deleted file mode 120000
index 0e127e0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/in.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/in.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/in.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/in.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in6.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in6.h
deleted file mode 120000
index 18c3130..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in6.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/in6.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/in6.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in6.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/in6.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/in6.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/init.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/init.h
deleted file mode 120000
index 488bb0a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/init.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/init.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/init.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/init.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/init.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/init.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/inotify.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/inotify.h
deleted file mode 120000
index 41670ad..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/inotify.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/inotify.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/inotify.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/inotify.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/inotify.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/inotify.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/input.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/input.h
deleted file mode 120000
index 423edd7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/input.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/input.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/input.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/input.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/input.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/input.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/interrupt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/interrupt.h
deleted file mode 120000
index b5cd63c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/interrupt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/interrupt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/interrupt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/interrupt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/interrupt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/interrupt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioctl.h
deleted file mode 120000
index b30e479..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ioctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioport.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioport.h
deleted file mode 120000
index d90526d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioport.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ioport.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ioport.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioport.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ioport.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioport.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioprio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioprio.h
deleted file mode 120000
index 1634241..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioprio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ioprio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ioprio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioprio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ioprio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioprio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ip.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ip.h
deleted file mode 120000
index e89967b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ip.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ip.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ip.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ip.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ip.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ip.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipc.h
deleted file mode 120000
index 60f3881..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ipc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_msgdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_msgdefs.h
deleted file mode 120000
index 2cfe5ac..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_msgdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipmi_msgdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipmi_msgdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_msgdefs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ipmi_msgdefs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_msgdefs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_smi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_smi.h
deleted file mode 120000
index 9a796a2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_smi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipmi_smi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipmi_smi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_smi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ipmi_smi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_smi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipx.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipx.h
deleted file mode 120000
index dd5d4b9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipx.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipx.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipx.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipx.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ipx.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipx.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq.h
deleted file mode 120000
index aa6cf1a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irq.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/irq.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/irq.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq_cpustat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq_cpustat.h
deleted file mode 120000
index 4a329b4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq_cpustat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irq_cpustat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/irq_cpustat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq_cpustat.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/irq_cpustat.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq_cpustat.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqflags.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqflags.h
deleted file mode 120000
index fa80886..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqflags.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irqflags.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/irqflags.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqflags.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/irqflags.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqflags.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqreturn.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqreturn.h
deleted file mode 120000
index 739fa62..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqreturn.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irqreturn.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/irqreturn.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqreturn.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/irqreturn.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqreturn.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jbd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jbd.h
deleted file mode 120000
index 9594286..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jbd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/jbd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/jbd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jbd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/jbd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/jbd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jiffies.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jiffies.h
deleted file mode 120000
index 5accf6a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jiffies.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/jiffies.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/jiffies.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jiffies.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/jiffies.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/jiffies.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kd.h
deleted file mode 120000
index e7005fa..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kdev_t.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kdev_t.h
deleted file mode 120000
index fffcdac..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kdev_t.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kdev_t.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kdev_t.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kdev_t.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kdev_t.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kdev_t.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel.h
deleted file mode 120000
index 4b3447c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kernel.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kernel.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kernel.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel_stat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel_stat.h
deleted file mode 120000
index 2f1598b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel_stat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kernel_stat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kernel_stat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel_stat.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kernel_stat.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel_stat.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernelcapi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernelcapi.h
deleted file mode 120000
index 78f09ac..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernelcapi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kernelcapi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kernelcapi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernelcapi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kernelcapi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernelcapi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kexec.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kexec.h
deleted file mode 120000
index 883b34f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kexec.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kexec.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kexec.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kexec.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kexec.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kexec.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/key.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/key.h
deleted file mode 120000
index a43f262..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/key.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/key.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/key.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/key.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/key.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/key.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keyboard.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keyboard.h
deleted file mode 120000
index f1e952c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keyboard.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/keyboard.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/keyboard.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keyboard.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/keyboard.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/keyboard.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keychord.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keychord.h
deleted file mode 120000
index 4af7a30..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keychord.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/keychord.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/keychord.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keychord.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/keychord.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/keychord.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/klist.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/klist.h
deleted file mode 120000
index 6c121e7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/klist.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/klist.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/klist.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/klist.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/klist.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/klist.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kmod.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kmod.h
deleted file mode 120000
index 0fc11ce..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kmod.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kmod.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kmod.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kmod.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kmod.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kmod.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kobject.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kobject.h
deleted file mode 120000
index 1e2eb82..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kobject.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kobject.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kobject.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kobject.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kobject.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kobject.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kref.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kref.h
deleted file mode 120000
index 84f0760..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kref.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kref.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kref.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kref.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kref.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kref.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ktime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ktime.h
deleted file mode 120000
index bd9e539..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ktime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ktime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ktime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ktime.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ktime.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ktime.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/limits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/limits.h
deleted file mode 120000
index 998a2f3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/limits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/limits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/limits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/limits.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/limits.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/limits.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/linkage.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/linkage.h
deleted file mode 120000
index 9981e49..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/linkage.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/linkage.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/linkage.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/linkage.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/linkage.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/linkage.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/list.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/list.h
deleted file mode 120000
index 8b5214f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/list.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/list.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/list.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/list.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/list.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/list.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/nlm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/nlm.h
deleted file mode 120000
index 1f70297..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/nlm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/lockd/nlm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/lockd/nlm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/nlm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/lockd/nlm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/nlm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/xdr.h
deleted file mode 120000
index 59987cf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/lockd/xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/lockd/xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/xdr.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/lockd/xdr.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/xdr.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockdep.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockdep.h
deleted file mode 120000
index 6a6ae87..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockdep.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/lockdep.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/lockdep.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockdep.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/lockdep.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockdep.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/loop.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/loop.h
deleted file mode 120000
index 6c91215..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/loop.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/loop.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/loop.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/loop.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/loop.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/loop.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/magic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/magic.h
deleted file mode 120000
index afafcfd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/magic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/magic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/magic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/magic.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/magic.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/magic.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/major.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/major.h
deleted file mode 120000
index f08b244..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/major.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/major.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/major.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/major.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/major.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/major.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mc146818rtc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mc146818rtc.h
deleted file mode 120000
index 4286741..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mc146818rtc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mc146818rtc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mc146818rtc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mc146818rtc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mc146818rtc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mc146818rtc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mca.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mca.h
deleted file mode 120000
index 1f34bde..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mca.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mca.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mca.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mca.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mca.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mca.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempolicy.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempolicy.h
deleted file mode 120000
index 2690b14..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempolicy.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mempolicy.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mempolicy.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempolicy.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mempolicy.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempolicy.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempool.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempool.h
deleted file mode 120000
index eaed026..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempool.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mempool.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mempool.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempool.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mempool.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempool.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/miscdevice.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/miscdevice.h
deleted file mode 120000
index 7de3342..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/miscdevice.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/miscdevice.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/miscdevice.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/miscdevice.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/miscdevice.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/miscdevice.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mm.h
deleted file mode 120000
index 111cc15..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/card.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/card.h
deleted file mode 120000
index 0a25330..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/card.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mmc/card.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmc/card.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/card.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mmc/card.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/card.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/host.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/host.h
deleted file mode 120000
index 61ab0f6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/host.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mmc/host.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmc/host.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/host.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mmc/host.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/host.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/mmc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/mmc.h
deleted file mode 120000
index ca8b23e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/mmc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mmc/mmc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmc/mmc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/mmc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mmc/mmc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/mmc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmzone.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmzone.h
deleted file mode 120000
index 6bd8d97..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmzone.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mmzone.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmzone.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmzone.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mmzone.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmzone.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mod_devicetable.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mod_devicetable.h
deleted file mode 120000
index 1104eb5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mod_devicetable.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mod_devicetable.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mod_devicetable.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mod_devicetable.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mod_devicetable.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mod_devicetable.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/module.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/module.h
deleted file mode 120000
index 93b3b19..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/module.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/module.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/module.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/module.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/module.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/module.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/moduleparam.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/moduleparam.h
deleted file mode 120000
index 1f544b7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/moduleparam.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/moduleparam.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/moduleparam.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/moduleparam.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/moduleparam.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/moduleparam.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mount.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mount.h
deleted file mode 120000
index 5ac8a42..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mount.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mount.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mount.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mount.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mount.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mount.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msdos_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msdos_fs.h
deleted file mode 120000
index de01ab3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msdos_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msdos_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/msdos_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msdos_fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/msdos_fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/msdos_fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msg.h
deleted file mode 120000
index 4b5c4f9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/msg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msg.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/msg.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/msg.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_adsp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_adsp.h
deleted file mode 120000
index 620ab8d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_adsp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msm_adsp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/msm_adsp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_adsp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/msm_adsp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_adsp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_audio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_audio.h
deleted file mode 120000
index 730a831..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_audio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msm_audio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/msm_audio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_audio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/msm_audio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_audio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_mdp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_mdp.h
deleted file mode 120000
index d4ff409..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_mdp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msm_mdp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/msm_mdp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_mdp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/msm_mdp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_mdp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mt9t013.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mt9t013.h
deleted file mode 120000
index 8a2b5c0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mt9t013.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mt9t013.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mt9t013.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mt9t013.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mt9t013.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mt9t013.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/bbm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/bbm.h
deleted file mode 120000
index d2d24c5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/bbm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/bbm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/bbm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/bbm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/bbm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/bbm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/blktrans.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/blktrans.h
deleted file mode 120000
index f16b497..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/blktrans.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/blktrans.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/blktrans.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/blktrans.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/blktrans.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/blktrans.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi.h
deleted file mode 120000
index 468e5e8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/cfi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/cfi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/cfi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi_endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi_endian.h
deleted file mode 120000
index 3f9e287..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi_endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/cfi_endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/cfi_endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi_endian.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/cfi_endian.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi_endian.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/compatmac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/compatmac.h
deleted file mode 120000
index ed02458..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/compatmac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/compatmac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/compatmac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/compatmac.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/compatmac.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/compatmac.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/flashchip.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/flashchip.h
deleted file mode 120000
index 96a349d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/flashchip.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/flashchip.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/flashchip.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/flashchip.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/flashchip.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/flashchip.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/map.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/map.h
deleted file mode 120000
index fee2465..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/map.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/map.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/map.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/map.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/map.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/map.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/mtd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/mtd.h
deleted file mode 120000
index 7821ca4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/mtd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/mtd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/mtd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/mtd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/mtd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/mtd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand.h
deleted file mode 120000
index 00fe26e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/nand.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/nand.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/nand.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand_ecc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand_ecc.h
deleted file mode 120000
index 3c780f2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand_ecc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/nand_ecc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/nand_ecc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand_ecc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/nand_ecc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand_ecc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nftl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nftl.h
deleted file mode 120000
index b68add4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nftl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/nftl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/nftl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nftl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/nftl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nftl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/onenand_regs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/onenand_regs.h
deleted file mode 120000
index cf98f5e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/onenand_regs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/onenand_regs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/onenand_regs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/onenand_regs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/onenand_regs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/onenand_regs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/partitions.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/partitions.h
deleted file mode 120000
index 1943ac4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/partitions.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/partitions.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/partitions.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/partitions.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/partitions.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/partitions.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtio.h
deleted file mode 120000
index e4a665b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mtio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex-debug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex-debug.h
deleted file mode 120000
index b03b89e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex-debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mutex-debug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mutex-debug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex-debug.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mutex-debug.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex-debug.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex.h
deleted file mode 120000
index adaf51c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mutex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mutex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mutex.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp.h
deleted file mode 120000
index 36de989..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ncp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ncp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ncp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_mount.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_mount.h
deleted file mode 120000
index d8e6b48..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_mount.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ncp_mount.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ncp_mount.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_mount.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ncp_mount.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_mount.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_no.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_no.h
deleted file mode 120000
index 4e59a2b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_no.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ncp_no.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ncp_no.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_no.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ncp_no.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_no.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/net.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/net.h
deleted file mode 120000
index 9ff68ce..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/net.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/net.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/net.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/net.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/net.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/net.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netdevice.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netdevice.h
deleted file mode 120000
index 103b2df..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netdevice.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netdevice.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netdevice.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netdevice.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netdevice.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netdevice.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter.h
deleted file mode 120000
index 81c9328..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
deleted file mode 120000
index 840faca..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_common.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_common.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_common.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
deleted file mode 120000
index 3a8e544..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_ftp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_ftp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_ftp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
deleted file mode 120000
index 17c5b25..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_sctp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_sctp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_sctp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
deleted file mode 120000
index 483187d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_tcp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tcp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tcp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
deleted file mode 120000
index 2335e58..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_tuple_common.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tuple_common.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tuple_common.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink.h
deleted file mode 120000
index 434215d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nfnetlink.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
deleted file mode 120000
index 87cc812..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nfnetlink_conntrack.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink_conntrack.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink_conntrack.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/x_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/x_tables.h
deleted file mode 120000
index d2b9746..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/x_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/x_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/x_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/x_tables.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/x_tables.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/x_tables.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
deleted file mode 120000
index a3b868a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_CLASSIFY.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CLASSIFY.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CLASSIFY.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
deleted file mode 120000
index 725dafb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_CONNSECMARK.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CONNSECMARK.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CONNSECMARK.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
deleted file mode 120000
index 851f571..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_NFQUEUE.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_NFQUEUE.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_NFQUEUE.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
deleted file mode 120000
index 02dfc1b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_SECMARK.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_SECMARK.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_SECMARK.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_comment.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_comment.h
deleted file mode 120000
index 141f426..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_comment.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_comment.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_comment.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_comment.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_comment.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_comment.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_connbytes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
deleted file mode 120000
index 7e67ee9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_connbytes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_connbytes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_connbytes.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_conntrack.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
deleted file mode 120000
index 04a1729..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_conntrack.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_conntrack.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_conntrack.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_dccp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_dccp.h
deleted file mode 120000
index 6bdc874..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_dccp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_dccp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_dccp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_dccp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_dccp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_dccp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_esp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_esp.h
deleted file mode 120000
index a27d0cc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_esp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_esp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_esp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_esp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_esp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_esp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_helper.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_helper.h
deleted file mode 120000
index 6b958db..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_helper.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_helper.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_helper.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_helper.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_helper.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_helper.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_length.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_length.h
deleted file mode 120000
index 680ef6b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_length.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_length.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_length.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_length.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_length.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_length.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_limit.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_limit.h
deleted file mode 120000
index 24bce98..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_limit.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_limit.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_limit.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_limit.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_limit.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_limit.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_mac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_mac.h
deleted file mode 120000
index 24af1fc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_mac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_mac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_mac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_mac.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_mac.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_mac.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_multiport.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_multiport.h
deleted file mode 120000
index 80b337d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_multiport.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_multiport.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_multiport.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_multiport.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_multiport.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_multiport.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_physdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_physdev.h
deleted file mode 120000
index c6ad18c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_physdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_physdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_physdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_physdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_physdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_physdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_pkttype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
deleted file mode 120000
index 3551c0d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_pkttype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_pkttype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_pkttype.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_quota.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_quota.h
deleted file mode 120000
index fc9f8b0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_quota.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_quota.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_quota.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_quota.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_quota.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_quota.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_realm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_realm.h
deleted file mode 120000
index 7c0e5f6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_realm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_realm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_realm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_realm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_realm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_realm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_sctp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_sctp.h
deleted file mode 120000
index cede7c7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_sctp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_sctp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_sctp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_sctp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_sctp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_sctp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_state.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_state.h
deleted file mode 120000
index 3f2ee91..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_state.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_state.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_state.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_state.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_state.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_state.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_statistic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_statistic.h
deleted file mode 120000
index dc1fe25..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_statistic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_statistic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_statistic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_statistic.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_statistic.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_statistic.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_string.h
deleted file mode 120000
index c19bebe..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_string.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_string.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_string.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
deleted file mode 120000
index 90cf9d5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_tcpmss.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpmss.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpmss.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
deleted file mode 120000
index 4e3f6b5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_tcpudp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpudp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpudp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp.h
deleted file mode 120000
index e6172ef..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_arp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_arp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_arp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
deleted file mode 120000
index b31b8c2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_arp/arp_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_arp/arp_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_arp/arp_tables.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_bridge.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_bridge.h
deleted file mode 120000
index f582040..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_bridge.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_bridge.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_bridge.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_bridge.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_bridge.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_bridge.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4.h
deleted file mode 120000
index 1daca65..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_ipv4.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
deleted file mode 120000
index 841b2e9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_conntrack.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
deleted file mode 120000
index 109ccef..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
deleted file mode 120000
index 9b17b22..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_nat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
deleted file mode 120000
index fe78e7f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_nat_rule.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat_rule.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat_rule.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
deleted file mode 120000
index 3ea52ca..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_queue.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_queue.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_queue.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
deleted file mode 120000
index 0f8460d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_tables.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
deleted file mode 120000
index f908438..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
deleted file mode 120000
index 29058d2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_DSCP.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_DSCP.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_DSCP.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
deleted file mode 120000
index fc1128c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_ECN.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ECN.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ECN.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
deleted file mode 120000
index b5dbb55..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_LOG.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_LOG.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_LOG.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
deleted file mode 120000
index 3686206..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
deleted file mode 120000
index b3f1023..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_REJECT.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_REJECT.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_REJECT.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
deleted file mode 120000
index fd24f6a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_TCPMSS.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TCPMSS.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TCPMSS.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
deleted file mode 120000
index bb1a243..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_TOS.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TOS.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TOS.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
deleted file mode 120000
index 0ad1303..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_TTL.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TTL.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TTL.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
deleted file mode 120000
index 9cc45e5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_ULOG.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ULOG.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ULOG.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
deleted file mode 120000
index 3b37d0b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_addrtype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_addrtype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_addrtype.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
deleted file mode 120000
index 4b846fa..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_ah.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ah.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ah.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
deleted file mode 120000
index 96a07ea..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_comment.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_comment.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_comment.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
deleted file mode 120000
index 76120e8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_connbytes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_connbytes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_connbytes.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
deleted file mode 120000
index 9be071c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_dccp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dccp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dccp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
deleted file mode 120000
index 75879c3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_dscp_.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dscp_.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dscp_.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
deleted file mode 120000
index 9830294..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_esp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_esp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_esp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
deleted file mode 120000
index 67cbcc1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_hashlimit.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_hashlimit.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_hashlimit.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
deleted file mode 120000
index b7039dc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_helper.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_helper.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_helper.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
deleted file mode 120000
index d225d28..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_iprange.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_iprange.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_iprange.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
deleted file mode 120000
index 268a39e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_length.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_length.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_length.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
deleted file mode 120000
index f3cae5b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_mac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_mac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_mac.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
deleted file mode 120000
index b082109..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_owner.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_owner.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_owner.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
deleted file mode 120000
index 47258d4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_physdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_physdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_physdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
deleted file mode 120000
index dc938c1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_pkttype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_pkttype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_pkttype.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
deleted file mode 120000
index c07b56d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_realm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_realm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_realm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
deleted file mode 120000
index 531cb56..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_recent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_recent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_recent.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
deleted file mode 120000
index 341f347..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_sctp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_sctp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_sctp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
deleted file mode 120000
index da5187b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_state.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_state.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_state.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
deleted file mode 120000
index 12d23d4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_string.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
deleted file mode 120000
index 35348cc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_tos_.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_tos_.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_tos_.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6.h
deleted file mode 120000
index 0a37d5b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_ipv6.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
deleted file mode 120000
index dbabff2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6_tables.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
deleted file mode 120000
index c7b27c9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_LOG.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_LOG.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_LOG.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
deleted file mode 120000
index fcee66d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_REJECT.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_REJECT.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_REJECT.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
deleted file mode 120000
index 79151b0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_ah.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ah.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ah.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
deleted file mode 120000
index 4f116b7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_esp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_esp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_esp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
deleted file mode 120000
index 7375205..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_frag.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_frag.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_frag.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
deleted file mode 120000
index d3bc0ae..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_ipv6header.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ipv6header.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ipv6header.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
deleted file mode 120000
index cc583e5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_length.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_length.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_length.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
deleted file mode 120000
index edb21e3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_mac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_mac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_mac.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
deleted file mode 120000
index 7dd0aec..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_opts.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_opts.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_opts.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
deleted file mode 120000
index cd6bbca..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_owner.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_owner.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_owner.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
deleted file mode 120000
index 72d42c8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_physdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_physdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_physdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
deleted file mode 120000
index 0ade394..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_rt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_rt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_rt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netlink.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netlink.h
deleted file mode 120000
index 91610b8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netlink.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netlink.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netlink.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netlink.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netlink.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netlink.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs.h
deleted file mode 120000
index a055478..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs2.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs2.h
deleted file mode 120000
index c3a9509..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs2.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs2.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs2.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs2.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfs2.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs2.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs3.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs3.h
deleted file mode 120000
index 4cd8d7a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs3.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs3.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs3.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs3.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfs3.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs3.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs4.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs4.h
deleted file mode 120000
index 4649859..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs4.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs4.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs4.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs4.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfs4.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs4.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs_xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs_xdr.h
deleted file mode 120000
index 2f6de25..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs_xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs_xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs_xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs_xdr.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfs_xdr.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs_xdr.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsacl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsacl.h
deleted file mode 120000
index c44aa13..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsacl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfsacl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsacl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsacl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsacl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsacl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/auth.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/auth.h
deleted file mode 120000
index f68aa51..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/auth.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/auth.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/auth.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/auth.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/auth.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/auth.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/const.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/const.h
deleted file mode 120000
index fe65cf4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/const.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/const.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/const.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/const.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/const.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/const.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/debug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/debug.h
deleted file mode 120000
index 789ca95..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/debug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/debug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/debug.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/debug.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/debug.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/export.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/export.h
deleted file mode 120000
index 811763b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/export.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/export.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/export.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/export.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/export.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/export.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/interface.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/interface.h
deleted file mode 120000
index b19512d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/interface.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/interface.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/interface.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/interface.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/interface.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/interface.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/nfsfh.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/nfsfh.h
deleted file mode 120000
index 9f3e60d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/nfsfh.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/nfsfh.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/nfsfh.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/nfsfh.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/nfsfh.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/nfsfh.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/stats.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/stats.h
deleted file mode 120000
index 744e2fb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/stats.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/stats.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/stats.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/stats.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/stats.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/stats.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/xdr.h
deleted file mode 120000
index 46d7928..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/xdr.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/xdr.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/xdr.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/node.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/node.h
deleted file mode 120000
index e67c59f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/node.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/node.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/node.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/node.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/node.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/node.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nodemask.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nodemask.h
deleted file mode 120000
index 356c720..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nodemask.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nodemask.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nodemask.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nodemask.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nodemask.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nodemask.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/notifier.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/notifier.h
deleted file mode 120000
index a0dfdcf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/notifier.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/notifier.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/notifier.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/notifier.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/notifier.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/notifier.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/numa.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/numa.h
deleted file mode 120000
index f0549f0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/numa.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/numa.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/numa.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/numa.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/numa.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/numa.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nvram.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nvram.h
deleted file mode 120000
index e2bce31..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nvram.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nvram.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nvram.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nvram.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nvram.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nvram.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/omap_csmi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/omap_csmi.h
deleted file mode 120000
index 0d2c516..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/omap_csmi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/omap_csmi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/omap_csmi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/omap_csmi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/omap_csmi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/omap_csmi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pagemap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pagemap.h
deleted file mode 120000
index 3545504..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pagemap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pagemap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pagemap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pagemap.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pagemap.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pagemap.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/param.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/param.h
deleted file mode 120000
index edd8f98..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/param.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/param.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/param.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/param.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/param.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/param.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/patchkey.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/patchkey.h
deleted file mode 120000
index 628a75c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/patchkey.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/patchkey.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/patchkey.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/patchkey.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/patchkey.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/patchkey.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci.h
deleted file mode 120000
index 22b0ec7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pci.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pci.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pci.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_ids.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_ids.h
deleted file mode 120000
index c3475fb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_ids.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pci_ids.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pci_ids.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_ids.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pci_ids.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_ids.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_regs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_regs.h
deleted file mode 120000
index 853c226..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_regs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pci_regs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pci_regs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_regs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pci_regs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_regs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu.h
deleted file mode 120000
index 93d6b27..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/percpu.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/percpu.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/percpu.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu_counter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu_counter.h
deleted file mode 120000
index 6c839d4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu_counter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/percpu_counter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/percpu_counter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu_counter.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/percpu_counter.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu_counter.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/personality.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/personality.h
deleted file mode 120000
index 0d6b659..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/personality.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/personality.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/personality.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/personality.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/personality.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/personality.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pfkeyv2.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pfkeyv2.h
deleted file mode 120000
index 321bbb6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pfkeyv2.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pfkeyv2.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pfkeyv2.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pfkeyv2.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pfkeyv2.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pfkeyv2.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_cls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_cls.h
deleted file mode 120000
index 58e8899..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_cls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pkt_cls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pkt_cls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_cls.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pkt_cls.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_cls.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_sched.h
deleted file mode 120000
index 77b5a47..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pkt_sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pkt_sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_sched.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pkt_sched.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_sched.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/platform_device.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/platform_device.h
deleted file mode 120000
index baa7b55..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/platform_device.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/platform_device.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/platform_device.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/platform_device.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/platform_device.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/platform_device.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/plist.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/plist.h
deleted file mode 120000
index 4d4e542..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/plist.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/plist.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/plist.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/plist.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/plist.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/plist.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pm.h
deleted file mode 120000
index 1a4339e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pnp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pnp.h
deleted file mode 120000
index d7e1bb9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pnp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pnp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pnp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pnp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pnp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pnp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/poll.h
deleted file mode 120000
index 23c4b3f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/poll.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/poll.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/poll.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_acl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_acl.h
deleted file mode 120000
index 29ae7cd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_acl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/posix_acl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/posix_acl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_acl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/posix_acl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_acl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_types.h
deleted file mode 120000
index bcbcf00..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/posix_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/posix_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/posix_types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppdev.h
deleted file mode 120000
index 3b386a6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ppdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ppdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ppdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppp_defs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppp_defs.h
deleted file mode 120000
index 309a3d0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppp_defs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ppp_defs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ppp_defs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppp_defs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ppp_defs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppp_defs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/prctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/prctl.h
deleted file mode 120000
index 8bbe96c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/prctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/prctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/prctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/prctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/prctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/prctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/preempt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/preempt.h
deleted file mode 120000
index 9b59fe3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/preempt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/preempt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/preempt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/preempt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/preempt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/preempt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/proc_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/proc_fs.h
deleted file mode 120000
index 6d310c4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/proc_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/proc_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/proc_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/proc_fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/proc_fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/proc_fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ptrace.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ptrace.h
deleted file mode 120000
index 2617a6c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ptrace.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ptrace.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ptrace.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ptrace.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ptrace.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ptrace.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qic117.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qic117.h
deleted file mode 120000
index 7223064..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qic117.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/qic117.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/qic117.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qic117.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/qic117.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/qic117.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qnxtypes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qnxtypes.h
deleted file mode 120000
index 5c767a3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qnxtypes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/qnxtypes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/qnxtypes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qnxtypes.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/qnxtypes.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/qnxtypes.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/quota.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/quota.h
deleted file mode 120000
index ed68365..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/quota.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/quota.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/quota.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/quota.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/quota.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/quota.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md.h
deleted file mode 120000
index e8599ef..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/raid/md.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_k.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_k.h
deleted file mode 120000
index 20f8ca6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_k.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md_k.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md_k.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_k.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/raid/md_k.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_k.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_p.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_p.h
deleted file mode 120000
index f631a38..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_p.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md_p.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md_p.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_p.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/raid/md_p.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_p.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_u.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_u.h
deleted file mode 120000
index 931271c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_u.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md_u.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md_u.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_u.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/raid/md_u.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_u.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/xor.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/xor.h
deleted file mode 120000
index b02a69a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/xor.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/xor.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/xor.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/xor.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/raid/xor.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/xor.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/random.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/random.h
deleted file mode 120000
index 0088784..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/random.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/random.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/random.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/random.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/random.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/random.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rbtree.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rbtree.h
deleted file mode 120000
index f606d94..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rbtree.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rbtree.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/rbtree.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rbtree.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/rbtree.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/rbtree.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rcupdate.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rcupdate.h
deleted file mode 120000
index e93235d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rcupdate.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rcupdate.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/rcupdate.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rcupdate.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/rcupdate.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/rcupdate.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/reboot.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/reboot.h
deleted file mode 120000
index c3b86f4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/reboot.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/reboot.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/reboot.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/reboot.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/reboot.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/reboot.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/relay.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/relay.h
deleted file mode 120000
index c354e19..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/relay.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/relay.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/relay.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/relay.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/relay.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/relay.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/resource.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/resource.h
deleted file mode 120000
index 80a9f86..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/resource.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/resource.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/resource.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/resource.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/resource.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/resource.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/route.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/route.h
deleted file mode 120000
index c81b220..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/route.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/route.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/route.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/route.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/route.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/route.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtc.h
deleted file mode 120000
index eaeecd3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rtc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/rtc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/rtc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtnetlink.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtnetlink.h
deleted file mode 120000
index 064a3d2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtnetlink.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rtnetlink.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/rtnetlink.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtnetlink.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/rtnetlink.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtnetlink.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rwsem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rwsem.h
deleted file mode 120000
index 68eab47..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rwsem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rwsem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/rwsem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rwsem.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/rwsem.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/rwsem.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sched.h
deleted file mode 120000
index e8ff88b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sched.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sched.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sched.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sem.h
deleted file mode 120000
index 5348418..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sem.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sem.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sem.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seq_file.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seq_file.h
deleted file mode 120000
index 2c25e6c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seq_file.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/seq_file.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/seq_file.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seq_file.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/seq_file.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/seq_file.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seqlock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seqlock.h
deleted file mode 120000
index 345108e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seqlock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/seqlock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/seqlock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seqlock.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/seqlock.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/seqlock.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_core.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_core.h
deleted file mode 120000
index be40c9a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_core.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/serial_core.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/serial_core.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_core.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/serial_core.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_core.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_reg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_reg.h
deleted file mode 120000
index 60bd137..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_reg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/serial_reg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/serial_reg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_reg.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/serial_reg.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_reg.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serio.h
deleted file mode 120000
index 4d3b062..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/serio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/serio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/serio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/serio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/shm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/shm.h
deleted file mode 120000
index 4cd2df0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/shm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/shm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/shm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/shm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/shm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/shm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/signal.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/signal.h
deleted file mode 120000
index 10e9b01..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/signal.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/signal.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/signal.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/signal.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/signal.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/signal.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/skbuff.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/skbuff.h
deleted file mode 120000
index 5ff4983..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/skbuff.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/skbuff.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/skbuff.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/skbuff.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/skbuff.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/skbuff.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/slab.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/slab.h
deleted file mode 120000
index 04f089d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/slab.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/slab.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/slab.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/slab.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/slab.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/slab.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smb.h
deleted file mode 120000
index 3f1cf22..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/smb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/smb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/smb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/smb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp.h
deleted file mode 120000
index bfa5942..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/smp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/smp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/smp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp_lock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp_lock.h
deleted file mode 120000
index 76d4cb0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp_lock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/smp_lock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/smp_lock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp_lock.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/smp_lock.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp_lock.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/socket.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/socket.h
deleted file mode 120000
index edc366f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/socket.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/socket.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/socket.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/socket.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/socket.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/socket.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sockios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sockios.h
deleted file mode 120000
index 793adfb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sockios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sockios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sockios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sockios.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sockios.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sockios.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/soundcard.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/soundcard.h
deleted file mode 120000
index ca37579..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/soundcard.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/soundcard.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/soundcard.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/soundcard.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/soundcard.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/soundcard.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock.h
deleted file mode 120000
index 305c46d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/spinlock.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_smp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_smp.h
deleted file mode 120000
index 45bfb4e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_smp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_api_smp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_api_smp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_smp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/spinlock_api_smp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_smp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_up.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_up.h
deleted file mode 120000
index b54532e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_up.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_api_up.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_api_up.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_up.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/spinlock_api_up.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_up.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types.h
deleted file mode 120000
index 39611b7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/spinlock_types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types_up.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types_up.h
deleted file mode 120000
index d5384d7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types_up.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_types_up.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_types_up.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types_up.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/spinlock_types_up.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types_up.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_up.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_up.h
deleted file mode 120000
index 46b3c0e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_up.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_up.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_up.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_up.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/spinlock_up.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_up.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stacktrace.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stacktrace.h
deleted file mode 120000
index 4c18232..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stacktrace.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stacktrace.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/stacktrace.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stacktrace.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/stacktrace.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/stacktrace.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stat.h
deleted file mode 120000
index 842159b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/stat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stat.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/stat.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/stat.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/statfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/statfs.h
deleted file mode 120000
index 4ac3b01..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/statfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/statfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/statfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/statfs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/statfs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/statfs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stddef.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stddef.h
deleted file mode 120000
index 9b398f1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stddef.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stddef.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/stddef.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stddef.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/stddef.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/stddef.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/string.h
deleted file mode 120000
index 414748f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/string.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/string.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/string.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stringify.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stringify.h
deleted file mode 120000
index 44dd7ed..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stringify.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stringify.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/stringify.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stringify.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/stringify.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/stringify.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth.h
deleted file mode 120000
index 1fbe34f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/auth.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/auth.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/auth.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth_gss.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth_gss.h
deleted file mode 120000
index 7bc8ad1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth_gss.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/auth_gss.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/auth_gss.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth_gss.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/auth_gss.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth_gss.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/clnt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/clnt.h
deleted file mode 120000
index 7f11a93..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/clnt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/clnt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/clnt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/clnt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/clnt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/clnt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/debug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/debug.h
deleted file mode 120000
index c95a429..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/debug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/debug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/debug.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/debug.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/debug.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_api.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_api.h
deleted file mode 120000
index e10eba6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_api.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/gss_api.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_api.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_api.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_api.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_api.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_asn1.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
deleted file mode 120000
index e860f8e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/gss_asn1.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_asn1.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_asn1.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_err.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_err.h
deleted file mode 120000
index 72c7141..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_err.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/gss_err.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_err.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_err.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_err.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_err.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/msg_prot.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/msg_prot.h
deleted file mode 120000
index d9cb9ae..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/msg_prot.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/msg_prot.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/msg_prot.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/msg_prot.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/msg_prot.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/msg_prot.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/sched.h
deleted file mode 120000
index 84791a7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/sched.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/sched.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/sched.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/stats.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/stats.h
deleted file mode 120000
index b115bd5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/stats.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/stats.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/stats.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/stats.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/stats.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/stats.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svc.h
deleted file mode 120000
index 658a81e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/svc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/svc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/svc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svcauth.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svcauth.h
deleted file mode 120000
index 8c3e841..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svcauth.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/svcauth.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/svcauth.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svcauth.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/svcauth.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svcauth.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/timer.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/timer.h
deleted file mode 120000
index ce8709d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/timer.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/timer.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/timer.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/timer.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/timer.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/timer.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/types.h
deleted file mode 120000
index e7f7656..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xdr.h
deleted file mode 120000
index 163e618..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xdr.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/xdr.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xdr.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xprt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xprt.h
deleted file mode 120000
index 6d29148..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xprt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/xprt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/xprt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xprt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/xprt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xprt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/swap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/swap.h
deleted file mode 120000
index 47db73a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/swap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/swap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/swap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/swap.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/swap.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/swap.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysctl.h
deleted file mode 120000
index 1252a53..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sysctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sysctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sysctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysdev.h
deleted file mode 120000
index 6691343..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sysdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sysdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sysdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysfs.h
deleted file mode 120000
index 0cbaad8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sysfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sysfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysfs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sysfs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysfs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats.h
deleted file mode 120000
index 24a178e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/taskstats.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/taskstats.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/taskstats.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats_kern.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats_kern.h
deleted file mode 120000
index 20b2c64..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats_kern.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/taskstats_kern.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/taskstats_kern.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats_kern.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/taskstats_kern.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats_kern.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tcp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tcp.h
deleted file mode 120000
index 417237a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tcp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/tcp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/tcp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tcp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/tcp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/tcp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/telephony.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/telephony.h
deleted file mode 120000
index 44b4c18..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/telephony.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/telephony.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/telephony.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/telephony.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/telephony.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/telephony.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/termios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/termios.h
deleted file mode 120000
index 968db97..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/termios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/termios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/termios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/termios.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/termios.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/termios.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/textsearch.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/textsearch.h
deleted file mode 120000
index e033273..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/textsearch.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/textsearch.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/textsearch.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/textsearch.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/textsearch.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/textsearch.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/thread_info.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/thread_info.h
deleted file mode 120000
index 11a1011..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/thread_info.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/thread_info.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/thread_info.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/thread_info.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/thread_info.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/thread_info.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/threads.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/threads.h
deleted file mode 120000
index ef3237e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/threads.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/threads.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/threads.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/threads.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/threads.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/threads.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/time.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/time.h
deleted file mode 120000
index 2060843..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/time.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/time.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/time.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/time.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/time.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/time.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timer.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timer.h
deleted file mode 120000
index f81d907..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timer.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/timer.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/timer.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timer.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/timer.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/timer.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/times.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/times.h
deleted file mode 120000
index 8757201..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/times.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/times.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/times.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/times.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/times.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/times.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timex.h
deleted file mode 120000
index 49e520b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/timex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/timex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timex.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/timex.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/timex.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tiocl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tiocl.h
deleted file mode 120000
index ae6102b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tiocl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/tiocl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/tiocl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tiocl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/tiocl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/tiocl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/transport_class.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/transport_class.h
deleted file mode 120000
index 735b69b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/transport_class.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/transport_class.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/transport_class.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/transport_class.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/transport_class.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/transport_class.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tty.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tty.h
deleted file mode 120000
index 4e874bf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tty.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/tty.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/tty.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tty.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/tty.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/tty.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/types.h
deleted file mode 120000
index 76b2511..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/udp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/udp.h
deleted file mode 120000
index 14ee4b2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/udp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/udp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/udp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/udp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/udp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/udp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_i.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_i.h
deleted file mode 120000
index de767a7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_i.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ufs_fs_i.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ufs_fs_i.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_i.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ufs_fs_i.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_i.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_sb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_sb.h
deleted file mode 120000
index a78b9d3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_sb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ufs_fs_sb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ufs_fs_sb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_sb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ufs_fs_sb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_sb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/uio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/uio.h
deleted file mode 120000
index 95a105d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/uio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/uio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/uio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/uio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/uio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/uio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/un.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/un.h
deleted file mode 120000
index 6d51e94..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/un.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/un.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/un.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/un.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/un.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/un.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/unistd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/unistd.h
deleted file mode 120000
index 7ef4a0d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/unistd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/unistd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/unistd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/unistd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/unistd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/unistd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb.h
deleted file mode 120000
index 7da27d7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/usb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/usb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/usb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb_ch9.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb_ch9.h
deleted file mode 120000
index d8a2655..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb_ch9.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/usb_ch9.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/usb_ch9.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb_ch9.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/usb_ch9.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb_ch9.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usbdevice_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usbdevice_fs.h
deleted file mode 120000
index b4c8de8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usbdevice_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/usbdevice_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/usbdevice_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usbdevice_fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/usbdevice_fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/usbdevice_fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/user.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/user.h
deleted file mode 120000
index 2bb072e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/user.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/user.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/user.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/user.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/user.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/user.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utime.h
deleted file mode 120000
index c483c28..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/utime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/utime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utime.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/utime.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/utime.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utsname.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utsname.h
deleted file mode 120000
index 8b0a098..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utsname.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/utsname.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/utsname.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utsname.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/utsname.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/utsname.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/version.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/version.h
deleted file mode 120000
index cb2ac62..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/version.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/version.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/version.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/version.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/version.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/version.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vfs.h
deleted file mode 120000
index b815962..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/vfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vfs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/vfs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/vfs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev.h
deleted file mode 120000
index 33e8651..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/videodev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/videodev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/videodev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev2.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev2.h
deleted file mode 120000
index 9127b40..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev2.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/videodev2.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/videodev2.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev2.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/videodev2.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev2.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vmalloc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vmalloc.h
deleted file mode 120000
index 90410fc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vmalloc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vmalloc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/vmalloc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vmalloc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/vmalloc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/vmalloc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt.h
deleted file mode 120000
index 5f1333a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/vt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/vt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt_buffer.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt_buffer.h
deleted file mode 120000
index babe241..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt_buffer.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vt_buffer.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/vt_buffer.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt_buffer.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/vt_buffer.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt_buffer.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wait.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wait.h
deleted file mode 120000
index ee2730b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wait.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/wait.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/wait.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wait.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/wait.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/wait.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wanrouter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wanrouter.h
deleted file mode 120000
index 1d1b8f1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wanrouter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/wanrouter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/wanrouter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wanrouter.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/wanrouter.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/wanrouter.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wireless.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wireless.h
deleted file mode 120000
index 43983b5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wireless.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/wireless.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/wireless.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wireless.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/wireless.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/wireless.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/workqueue.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/workqueue.h
deleted file mode 120000
index 3ce0512..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/workqueue.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/workqueue.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/workqueue.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/workqueue.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/workqueue.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/workqueue.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/xattr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/xattr.h
deleted file mode 120000
index 8cf8b0b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/xattr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/xattr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/xattr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/xattr.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/xattr.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/xattr.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zconf.h
deleted file mode 120000
index 4dc29e6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/zconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/zconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zconf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/zconf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/zconf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zlib.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zlib.h
deleted file mode 120000
index 9d45319..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zlib.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/zlib.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/zlib.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zlib.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/zlib.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/zlib.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zorro_ids.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zorro_ids.h
deleted file mode 120000
index f2220c0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zorro_ids.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/zorro_ids.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/zorro_ids.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zorro_ids.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/zorro_ids.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/zorro_ids.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/locale.h b/ndk/build/platforms/android-3/arch-arm/usr/include/locale.h
deleted file mode 120000
index 26247fd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/locale.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/locale.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/locale.h b/ndk/build/platforms/android-3/arch-arm/usr/include/locale.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/locale.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/locale.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/malloc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/malloc.h
deleted file mode 120000
index 78a8006..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/malloc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/malloc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/malloc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/malloc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/malloc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/malloc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/math.h b/ndk/build/platforms/android-3/arch-arm/usr/include/math.h
deleted file mode 120000
index 0d4bdcd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/math.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/math.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/math.h b/ndk/build/platforms/android-3/arch-arm/usr/include/math.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/math.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/math.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/memory.h b/ndk/build/platforms/android-3/arch-arm/usr/include/memory.h
deleted file mode 120000
index 08375e2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/memory.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/memory.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/memory.h b/ndk/build/platforms/android-3/arch-arm/usr/include/memory.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/memory.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/memory.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/mntent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/mntent.h
deleted file mode 120000
index 43186c4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/mntent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/mntent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/mntent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/mntent.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/mntent.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/mntent.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-abi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-abi.h
deleted file mode 120000
index 19a9a51..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-abi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/mtd/mtd-abi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/mtd/mtd-abi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-abi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/mtd/mtd-abi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-abi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-user.h b/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-user.h
deleted file mode 120000
index e22b96b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-user.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/mtd/mtd-user.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/mtd/mtd-user.h b/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-user.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/mtd/mtd-user.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-user.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/ethertypes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/ethertypes.h
deleted file mode 120000
index 621864d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/ethertypes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/ethertypes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/ethertypes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/ethertypes.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/ethertypes.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/ethertypes.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if.h
deleted file mode 120000
index c83fdb9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_arp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_arp.h
deleted file mode 120000
index e8e84bb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_arp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_arp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if_arp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_arp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if_arp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if_arp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_dl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_dl.h
deleted file mode 120000
index 1a27df4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_dl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_dl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if_dl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_dl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if_dl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if_dl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ether.h
deleted file mode 120000
index 591c1db..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if_ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ether.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if_ether.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ether.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ieee1394.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ieee1394.h
deleted file mode 120000
index f0b13ce..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ieee1394.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_ieee1394.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if_ieee1394.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ieee1394.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if_ieee1394.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ieee1394.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_packet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_packet.h
deleted file mode 120000
index 4c5bd8d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_packet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_packet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if_packet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_packet.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if_packet.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if_packet.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_types.h
deleted file mode 120000
index 410430f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if_types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if_types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/route.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/route.h
deleted file mode 120000
index ea03206..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/route.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/route.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/route.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/route.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/route.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/route.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netdb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netdb.h
deleted file mode 120000
index 67f7a2f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netdb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/netdb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netdb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netdb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netdb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netdb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ether.h
deleted file mode 120000
index e331c47..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ether.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/ether.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ether.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/if_ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/if_ether.h
deleted file mode 120000
index 5354bb5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/if_ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/if_ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/if_ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/if_ether.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/if_ether.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/if_ether.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in.h
deleted file mode 120000
index 8439fe5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/in.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/in.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/in.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in6.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in6.h
deleted file mode 120000
index fa5937f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in6.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/in6.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/in6.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in6.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/in6.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in6.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in_systm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in_systm.h
deleted file mode 120000
index ea70a33..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in_systm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/in_systm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/in_systm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in_systm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/in_systm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in_systm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip.h
deleted file mode 120000
index 3eb2097..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/ip.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/ip.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/ip.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip_icmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip_icmp.h
deleted file mode 120000
index 2c9024f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip_icmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/ip_icmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/ip_icmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip_icmp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/ip_icmp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip_icmp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/tcp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/tcp.h
deleted file mode 120000
index 6b0d829..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/tcp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/tcp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/tcp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/tcp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/tcp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/tcp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/udp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/udp.h
deleted file mode 120000
index d5e0f6b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/udp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/udp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/udp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/udp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/udp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/udp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netpacket/packet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netpacket/packet.h
deleted file mode 120000
index 7473ba4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netpacket/packet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netpacket/packet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netpacket/packet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netpacket/packet.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netpacket/packet.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netpacket/packet.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/new b/ndk/build/platforms/android-3/arch-arm/usr/include/new
deleted file mode 120000
index b3e4225..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/new
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/new
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/new b/ndk/build/platforms/android-3/arch-arm/usr/include/new
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/new
rename to ndk/build/platforms/android-3/arch-arm/usr/include/new
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/nsswitch.h b/ndk/build/platforms/android-3/arch-arm/usr/include/nsswitch.h
deleted file mode 120000
index 361ce34..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/nsswitch.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/nsswitch.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/nsswitch.h b/ndk/build/platforms/android-3/arch-arm/usr/include/nsswitch.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/nsswitch.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/nsswitch.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/pathconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/pathconf.h
deleted file mode 120000
index f1c45ca..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/pathconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/pathconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/pathconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/pathconf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/pathconf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/pathconf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/paths.h b/ndk/build/platforms/android-3/arch-arm/usr/include/paths.h
deleted file mode 120000
index 04b00c0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/paths.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/paths.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/paths.h b/ndk/build/platforms/android-3/arch-arm/usr/include/paths.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/paths.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/paths.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/poll.h
deleted file mode 120000
index e260aad..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/poll.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/poll.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/poll.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/pthread.h b/ndk/build/platforms/android-3/arch-arm/usr/include/pthread.h
deleted file mode 120000
index e7240fe..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/pthread.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/pthread.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/pthread.h b/ndk/build/platforms/android-3/arch-arm/usr/include/pthread.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/pthread.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/pthread.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/pwd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/pwd.h
deleted file mode 120000
index deefc65..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/pwd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/pwd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/pwd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/pwd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/pwd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/pwd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/resolv.h b/ndk/build/platforms/android-3/arch-arm/usr/include/resolv.h
deleted file mode 120000
index 645cec6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/resolv.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/resolv.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/resolv.h b/ndk/build/platforms/android-3/arch-arm/usr/include/resolv.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/resolv.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/resolv.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sched.h
deleted file mode 120000
index 7eb75bc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sched.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sched.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sched.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/semaphore.h b/ndk/build/platforms/android-3/arch-arm/usr/include/semaphore.h
deleted file mode 120000
index 5981819..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/semaphore.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/semaphore.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/semaphore.h b/ndk/build/platforms/android-3/arch-arm/usr/include/semaphore.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/semaphore.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/semaphore.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/setjmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/setjmp.h
deleted file mode 120000
index 927b88e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/setjmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/setjmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/setjmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/setjmp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/setjmp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/setjmp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sgtty.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sgtty.h
deleted file mode 120000
index fcfac52..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sgtty.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/sgtty.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sgtty.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sgtty.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sgtty.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sgtty.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sha1.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sha1.h
deleted file mode 120000
index f4aadd2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sha1.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/sha1.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sha1.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sha1.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sha1.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sha1.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/signal.h b/ndk/build/platforms/android-3/arch-arm/usr/include/signal.h
deleted file mode 120000
index 83e2e8e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/signal.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/signal.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/signal.h b/ndk/build/platforms/android-3/arch-arm/usr/include/signal.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/signal.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/signal.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/stdint.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stdint.h
deleted file mode 120000
index 8b0dfbf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/stdint.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stdint.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/stdint.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stdint.h
new file mode 100644
index 0000000..237baa2
--- /dev/null
+++ b/ndk/build/platforms/android-3/arch-arm/usr/include/stdint.h
@@ -0,0 +1,266 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _STDINT_H
+#define _STDINT_H
+
+#include <stddef.h>
+#include <sys/_types.h>
+
+
+
+#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS)
+# define __STDINT_LIMITS
+#endif
+
+#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS)
+# define __STDINT_MACROS
+#endif
+
+/* the definitions of STDINT_LIMITS depend on those of STDINT_MACROS */
+#if defined __STDINT_LIMITS && !defined __STDINT_MACROS
+# define __STDINT_MACROS
+#endif
+
+#if !defined __STRICT_ANSI__ || __STDC_VERSION__ >= 199901L
+# define __STDC_INT64__
+#endif
+
+typedef __int8_t int8_t;
+typedef __uint8_t uint8_t;
+typedef __int16_t int16_t;
+typedef __uint16_t uint16_t;
+typedef __int32_t int32_t;
+typedef __uint32_t uint32_t;
+#if defined(__STDC_INT64__)
+typedef __int64_t int64_t;
+typedef __uint64_t uint64_t;
+#endif
+
+/*
+ * int8_t & uint8_t
+ */
+
+typedef int8_t int_least8_t;
+typedef int8_t int_fast8_t;
+
+typedef uint8_t uint_least8_t;
+typedef uint8_t uint_fast8_t;
+
+#ifdef __STDINT_LIMITS
+# define INT8_MIN (-128)
+# define INT8_MAX (127)
+# define INT_LEAST8_MIN INT8_MIN
+# define INT_LEAST8_MAX INT8_MAX
+# define INT_FAST8_MIN INT8_MIN
+# define INT_FAST8_MAX INT8_MAX
+
+# define UINT8_MAX (255U)
+# define UINT_LEAST8_MAX UINT8_MAX
+# define UINT_FAST8_MAX UINT8_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+# define INT8_C(c) c
+# define INT_LEAST8_C(c) INT8_C(c)
+# define INT_FAST8_C(c) INT8_C(c)
+
+# define UINT8_C(c) c ## U
+# define UINT_LEAST8_C(c) UINT8_C(c)
+# define UINT_FAST8_C(c) UINT8_C(c)
+#endif
+
+/*
+ * int16_t & uint16_t
+ */
+
+
+typedef int16_t int_least16_t;
+typedef int32_t int_fast16_t;
+
+typedef uint16_t uint_least16_t;
+typedef uint32_t uint_fast16_t;
+
+#ifdef __STDINT_LIMITS
+# define INT16_MIN (-32768)
+# define INT16_MAX (32767)
+# define INT_LEAST16_MIN INT16_MIN
+# define INT_LEAST16_MAX INT16_MAX
+# define INT_FAST16_MIN INT32_MIN
+# define INT_FAST16_MAX INT32_MAX
+
+# define UINT16_MAX (65535U)
+# define UINT_LEAST16_MAX UINT16_MAX
+# define UINT_FAST16_MAX UINT32_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+# define INT16_C(c) c
+# define INT_LEAST16_C(c) INT16_C(c)
+# define INT_FAST16_C(c) INT32_C(c)
+
+# define UINT16_C(c) c ## U
+# define UINT_LEAST16_C(c) UINT16_C(c)
+# define UINT_FAST16_C(c) UINT32_C(c)
+#endif
+
+/*
+ * int32_t & uint32_t
+ */
+
+typedef int32_t int_least32_t;
+typedef int32_t int_fast32_t;
+
+typedef uint32_t uint_least32_t;
+typedef uint32_t uint_fast32_t;
+
+#ifdef __STDINT_LIMITS
+# define INT32_MIN (-2147483647-1)
+# define INT32_MAX (2147483647)
+# define INT_LEAST32_MIN INT32_MIN
+# define INT_LEAST32_MAX INT32_MAX
+# define INT_FAST32_MIN INT32_MIN
+# define INT_FAST32_MAX INT32_MAX
+
+# define UINT32_MAX (4294967295U)
+# define UINT_LEAST32_MAX UINT32_MAX
+# define UINT_FAST32_MAX UINT32_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+# define INT32_C(c) c
+# define INT_LEAST32_C(c) INT32_C(c)
+# define INT_FAST32_C(c) INT32_C(c)
+
+# define UINT32_C(c) c ## U
+# define UINT_LEAST32_C(c) UINT32_C(c)
+# define UINT_FAST32_C(c) UINT32_C(c)
+#endif
+
+#if defined(__STDC_INT64__)
+/*
+ * int64_t
+ */
+typedef int64_t int_least64_t;
+typedef int64_t int_fast64_t;
+
+typedef uint64_t uint_least64_t;
+typedef uint64_t uint_fast64_t;
+
+
+#ifdef __STDINT_LIMITS
+# define INT64_MIN (__INT64_C(-9223372036854775807)-1)
+# define INT64_MAX (__INT64_C(9223372036854775807))
+# define INT_LEAST64_MIN INT64_MIN
+# define INT_LEAST64_MAX INT64_MAX
+# define INT_FAST64_MIN INT64_MIN
+# define INT_FAST64_MAX INT64_MAX
+# define UINT64_MAX (__UINT64_C(18446744073709551615))
+
+# define UINT_LEAST64_MAX UINT64_MAX
+# define UINT_FAST64_MAX UINT64_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+# define __INT64_C(c) c ## LL
+# define INT64_C(c) __INT64_C(c)
+# define INT_LEAST64_C(c) INT64_C(c)
+# define INT_FAST64_C(c) INT64_C(c)
+
+# define __UINT64_C(c) c ## ULL
+# define UINT64_C(c) __UINT64_C(c)
+# define UINT_LEAST64_C(c) UINT64_C(c)
+# define UINT_FAST64_C(c) UINT64_C(c)
+#endif
+
+
+# define __PRI64_RANK "ll"
+# define __PRIFAST_RANK ""
+# define __PRIPTR_RANK ""
+
+#endif /* __STDC_INT64__ */
+
+/*
+ * intptr_t & uintptr_t
+ */
+
+typedef int intptr_t;
+typedef unsigned int uintptr_t;
+
+# define INTPTR_MIN INT32_MIN
+# define INTPTR_MAX INT32_MAX
+# define UINTPTR_MAX UINT32_MAX
+# define INTPTR_C(c) INT32_C(c)
+# define UINTPTR_C(c) UINT32_C(c)
+# define PTRDIFF_C(c) INT32_C(c)
+# define PTRDIFF_MIN INT32_MIN
+# define PTRDIFF_MAX INT32_MAX
+
+
+/*
+ * intmax_t & uintmax_t
+ */
+
+#if defined(__STDC_INT64__)
+
+typedef uint64_t uintmax_t;
+typedef int64_t intmax_t;
+
+#define INTMAX_MIN INT64_MIN
+#define INTMAX_MAX INT64_MAX
+#define UINTMAX_MAX UINT64_MAX
+
+#define INTMAX_C(c) INT64_C(c)
+#define UINTMAX_C(c) UINT64_C(c)
+
+#else /* !__STDC_INT64__ */
+
+typedef uint32_t uintmax_t;
+typedef int32_t intmax_t;
+
+#define INTMAX_MIN INT32_MIN
+#define INTMAX_MAX INT32_MAX
+#define UINTMAX_MAX UINT32_MAX
+
+#define INTMAX_C(c) INT32_C(c)
+#define UINTMAX_C(c) UINT32_C(c)
+
+#endif /* !__STDC_INT64__ */
+
+
+/* size_t is defined by the GCC-specific <stddef.h> */
+#ifndef _SSIZE_T_DEFINED_
+#define _SSIZE_T_DEFINED_
+typedef long int ssize_t;
+#endif
+
+#define _BITSIZE 32
+
+/* Keep the kernel from trying to define these types... */
+#define __BIT_TYPES_DEFINED__
+
+#endif /* _STDINT_H */
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/stdio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stdio.h
deleted file mode 120000
index 41d7d04..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/stdio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stdio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/stdio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stdio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/stdio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/stdio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/stdlib.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stdlib.h
deleted file mode 120000
index de97694..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/stdlib.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stdlib.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/stdlib.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stdlib.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/stdlib.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/stdlib.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/stl_pair.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stl_pair.h
deleted file mode 120000
index bfeaf5b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/stl_pair.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stl_pair.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/stl_pair.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stl_pair.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/stl_pair.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/stl_pair.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/string.h
deleted file mode 120000
index ee1c46a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/string.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/string.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/string.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/strings.h b/ndk/build/platforms/android-3/arch-arm/usr/include/strings.h
deleted file mode 120000
index e3c356d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/strings.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/strings.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/strings.h b/ndk/build/platforms/android-3/arch-arm/usr/include/strings.h
new file mode 100644
index 0000000..fee7dc4
--- /dev/null
+++ b/ndk/build/platforms/android-3/arch-arm/usr/include/strings.h
@@ -0,0 +1,56 @@
+/* $NetBSD: strings.h,v 1.10 2005/02/03 04:39:32 perry Exp $ */
+
+/*-
+ * Copyright (c) 1998 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Klaus Klein.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the NetBSD
+ * Foundation, Inc. and its contributors.
+ * 4. Neither the name of The NetBSD Foundation nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _STRINGS_H_
+#define _STRINGS_H_
+
+#include <sys/types.h>
+#include <sys/cdefs.h>
+
+__BEGIN_DECLS
+int bcmp(const void *, const void *, size_t);
+void bcopy(const void *, void *, size_t);
+void bzero(void *, size_t);
+int ffs(int);
+char *index(const char *, int);
+char *rindex(const char *, int);
+int strcasecmp(const char *, const char *);
+int strncasecmp(const char *, const char *, size_t);
+__END_DECLS
+
+#endif /* !defined(_STRINGS_H_) */
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_errdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_errdefs.h
deleted file mode 120000
index b2a299e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_errdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_errdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/_errdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_errdefs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/_errdefs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/_errdefs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_sigdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_sigdefs.h
deleted file mode 120000
index ea48d37..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_sigdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_sigdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/_sigdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_sigdefs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/_sigdefs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/_sigdefs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_system_properties.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_system_properties.h
deleted file mode 120000
index 6054cc4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_system_properties.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_system_properties.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/_system_properties.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_system_properties.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/_system_properties.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/_system_properties.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_types.h
deleted file mode 120000
index 936b4d5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/_types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/_types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/atomics.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/atomics.h
deleted file mode 120000
index 0304794..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/atomics.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/atomics.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/atomics.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/atomics.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/atomics.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/atomics.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs.h
deleted file mode 120000
index 36eede7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/cdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/cdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/cdefs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs_elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs_elf.h
deleted file mode 120000
index fa852bf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs_elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/cdefs_elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/cdefs_elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs_elf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/cdefs_elf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs_elf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/dirent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/dirent.h
deleted file mode 120000
index cac02ee..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/dirent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/dirent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/dirent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/dirent.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/dirent.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/dirent.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/endian.h
deleted file mode 120000
index 25109db..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/endian.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/endian.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/endian.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/epoll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/epoll.h
deleted file mode 120000
index bf93fc6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/epoll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/epoll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/epoll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/epoll.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/epoll.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/epoll.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/errno.h
deleted file mode 120000
index 199ad78..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/errno.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/errno.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/errno.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/exec_elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/exec_elf.h
deleted file mode 120000
index 24e01e6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/exec_elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/exec_elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/exec_elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/exec_elf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/exec_elf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/exec_elf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/file.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/file.h
deleted file mode 120000
index 99ab5d3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/file.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/file.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/file.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/file.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/file.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/file.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/fsuid.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/fsuid.h
deleted file mode 120000
index f5f9974..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/fsuid.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/fsuid.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/fsuid.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/fsuid.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/fsuid.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/fsuid.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/inotify.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/inotify.h
deleted file mode 120000
index a050653..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/inotify.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/inotify.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/inotify.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/inotify.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/inotify.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/inotify.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl.h
deleted file mode 120000
index e228a66..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/ioctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl_compat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl_compat.h
deleted file mode 120000
index dd004de..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl_compat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ioctl_compat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/ioctl_compat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl_compat.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/ioctl_compat.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl_compat.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ipc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ipc.h
deleted file mode 120000
index 5d275f2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ipc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ipc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/ipc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ipc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/ipc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/ipc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/klog.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/klog.h
deleted file mode 120000
index 4cad4c9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/klog.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/klog.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/klog.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/klog.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/klog.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/klog.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/limits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/limits.h
deleted file mode 120000
index 4f50214..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/limits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/limits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/limits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/limits.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/limits.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/limits.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-syscalls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-syscalls.h
deleted file mode 120000
index 754d7c49..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-syscalls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/linux-syscalls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/linux-syscalls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-syscalls.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/linux-syscalls.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-syscalls.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-unistd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-unistd.h
deleted file mode 120000
index 9496fde..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-unistd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/linux-unistd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/linux-unistd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-unistd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/linux-unistd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-unistd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mman.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mman.h
deleted file mode 120000
index bd6a6b8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mman.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/mman.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/mman.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mman.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/mman.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/mman.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mount.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mount.h
deleted file mode 120000
index 0b0a916..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mount.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/mount.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/mount.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mount.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/mount.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/mount.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/param.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/param.h
deleted file mode 120000
index 16e5bcc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/param.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/param.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/param.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/param.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/param.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/param.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/poll.h
deleted file mode 120000
index a98ab69..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/poll.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/poll.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/poll.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/prctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/prctl.h
deleted file mode 120000
index 950d2fb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/prctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/prctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/prctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/prctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/prctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/prctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ptrace.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ptrace.h
deleted file mode 120000
index 3b2714f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ptrace.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ptrace.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/ptrace.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ptrace.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/ptrace.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/ptrace.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/reboot.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/reboot.h
deleted file mode 120000
index 8295ffc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/reboot.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/reboot.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/reboot.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/reboot.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/reboot.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/reboot.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/resource.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/resource.h
deleted file mode 120000
index 72a813f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/resource.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/resource.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/resource.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/resource.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/resource.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/resource.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/select.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/select.h
deleted file mode 120000
index 42f2037..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/select.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/select.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/select.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/select.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/select.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/select.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sendfile.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sendfile.h
deleted file mode 120000
index ac4d8a0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sendfile.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sendfile.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/sendfile.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sendfile.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/sendfile.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/sendfile.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socket.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socket.h
deleted file mode 120000
index 36a0331..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socket.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/socket.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/socket.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socket.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/socket.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/socket.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socketcalls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socketcalls.h
deleted file mode 120000
index 5e94809..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socketcalls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/socketcalls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/socketcalls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socketcalls.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/socketcalls.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/socketcalls.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/stat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/stat.h
deleted file mode 120000
index fa00c54..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/stat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/stat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/stat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/stat.h
new file mode 100644
index 0000000..091ee6d
--- /dev/null
+++ b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/stat.h
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _SYS_STAT_H_
+#define _SYS_STAT_H_
+
+#include <sys/cdefs.h>
+#include <sys/types.h>
+#include <sys/time.h>
+#include <linux/stat.h>
+
+#include <endian.h>
+
+__BEGIN_DECLS
+
+/* really matches stat64 in the kernel, hence the padding
+ * Note: The kernel zero's the padded region because glibc might read them
+ * in the hope that the kernel has stretched to using larger sizes.
+ */
+struct stat {
+ unsigned long long st_dev;
+ unsigned char __pad0[4];
+
+ unsigned long __st_ino;
+ unsigned int st_mode;
+ unsigned int st_nlink;
+
+ unsigned long st_uid;
+ unsigned long st_gid;
+
+ unsigned long long st_rdev;
+ unsigned char __pad3[4];
+
+ long long st_size;
+ unsigned long st_blksize;
+ unsigned long long st_blocks;
+
+ unsigned long st_atime;
+ unsigned long st_atime_nsec;
+
+ unsigned long st_mtime;
+ unsigned long st_mtime_nsec;
+
+ unsigned long st_ctime;
+ unsigned long st_ctime_nsec;
+
+ unsigned long long st_ino;
+};
+
+/* For compatibility with GLibc, we provide macro aliases
+ * for the non-Posix nano-seconds accessors.
+ */
+#define st_atimensec st_atime_nsec
+#define st_mtimensec st_mtime_nsec
+#define st_ctimensec st_ctime_nsec
+
+extern int chmod(const char *, mode_t);
+extern int fchmod(int, mode_t);
+extern int mkdir(const char *, mode_t);
+
+extern int stat(const char *, struct stat *);
+extern int fstat(int, struct stat *);
+extern int lstat(const char *, struct stat *);
+extern int mknod(const char *, mode_t, dev_t);
+extern mode_t umask(mode_t);
+
+#define stat64 stat
+#define fstat64 fstat
+#define lstat64 lstat
+
+static __inline__ int mkfifo(const char *__p, mode_t __m)
+{
+ return mknod(__p, (__m & ~S_IFMT) | S_IFIFO, (dev_t)0);
+}
+
+extern int fstatat(int dirfd, const char *path, struct stat *buf, int flags);
+extern int mkdirat(int dirfd, const char *pathname, mode_t mode);
+extern int fchownat(int dirfd, const char *path, uid_t owner, gid_t group, int flags);
+extern int fchmodat(int dirfd, const char *path, mode_t mode, int flags);
+extern int renameat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath);
+
+__END_DECLS
+
+#endif /* _SYS_STAT_H_ */
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/statfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/statfs.h
deleted file mode 120000
index d53806d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/statfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/statfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/statfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/statfs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/statfs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/statfs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syscall.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syscall.h
deleted file mode 120000
index 4225c35..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syscall.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/syscall.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/syscall.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syscall.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/syscall.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/syscall.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysconf.h
deleted file mode 120000
index ed9cf1f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sysconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/sysconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysconf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/sysconf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysconf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysinfo.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysinfo.h
deleted file mode 120000
index 1693d79..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysinfo.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sysinfo.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/sysinfo.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysinfo.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/sysinfo.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysinfo.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syslimits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syslimits.h
deleted file mode 120000
index 17efa78..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syslimits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/syslimits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/syslimits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syslimits.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/syslimits.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/syslimits.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysmacros.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysmacros.h
deleted file mode 120000
index fa13eca..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysmacros.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sysmacros.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/sysmacros.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysmacros.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/sysmacros.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysmacros.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/system_properties.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/system_properties.h
deleted file mode 120000
index 286ba9d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/system_properties.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/system_properties.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/system_properties.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/system_properties.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/system_properties.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/system_properties.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/time.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/time.h
deleted file mode 120000
index b376430..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/time.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/time.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/time.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/time.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/time.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/time.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/timeb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/timeb.h
deleted file mode 120000
index fef113e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/timeb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/timeb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/timeb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/timeb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/timeb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/timeb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/times.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/times.h
deleted file mode 120000
index 53c3a1a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/times.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/times.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/times.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/times.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/times.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/times.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttychars.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttychars.h
deleted file mode 120000
index 09c3352..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttychars.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ttychars.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/ttychars.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttychars.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/ttychars.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttychars.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttydev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttydev.h
deleted file mode 120000
index 4735daa..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttydev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ttydev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/ttydev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttydev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/ttydev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttydev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/types.h
deleted file mode 120000
index 8829c6b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/uio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/uio.h
deleted file mode 120000
index a111200..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/uio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/uio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/uio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/uio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/uio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/uio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/un.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/un.h
deleted file mode 120000
index 20d7c68..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/un.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/un.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/un.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/un.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/un.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/un.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utime.h
deleted file mode 120000
index 8494247..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/utime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/utime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utime.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/utime.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/utime.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utsname.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utsname.h
deleted file mode 120000
index cf985f0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utsname.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/utsname.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/utsname.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utsname.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/utsname.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/utsname.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vfs.h
deleted file mode 120000
index c4873c3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/vfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/vfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vfs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/vfs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/vfs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vt.h
deleted file mode 120000
index 55b3ed4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/vt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/vt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/vt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/vt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/wait.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/wait.h
deleted file mode 120000
index 9f27986..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/wait.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/wait.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/wait.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/wait.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/wait.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/wait.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/syslog.h b/ndk/build/platforms/android-3/arch-arm/usr/include/syslog.h
deleted file mode 120000
index 609c4e1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/syslog.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/syslog.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/syslog.h b/ndk/build/platforms/android-3/arch-arm/usr/include/syslog.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/syslog.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/syslog.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/termios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/termios.h
deleted file mode 120000
index 53740f5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/termios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/termios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/termios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/termios.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/termios.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/termios.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/thread_db.h b/ndk/build/platforms/android-3/arch-arm/usr/include/thread_db.h
deleted file mode 120000
index e6b5ced..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/thread_db.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/thread_db.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/thread_db.h b/ndk/build/platforms/android-3/arch-arm/usr/include/thread_db.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/thread_db.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/thread_db.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/time.h b/ndk/build/platforms/android-3/arch-arm/usr/include/time.h
deleted file mode 120000
index 4ae3e06..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/time.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/time.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/time.h b/ndk/build/platforms/android-3/arch-arm/usr/include/time.h
new file mode 100644
index 0000000..6163c6d
--- /dev/null
+++ b/ndk/build/platforms/android-3/arch-arm/usr/include/time.h
@@ -0,0 +1,115 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _TIME_H_
+#define _TIME_H_
+
+#include <sys/cdefs.h>
+#include <sys/time.h>
+
+#define __ARCH_SI_UID_T __kernel_uid32_t
+#include <asm/siginfo.h>
+#undef __ARCH_SI_UID_T
+
+__BEGIN_DECLS
+
+extern time_t time(time_t *);
+extern int nanosleep(const struct timespec *, struct timespec *);
+
+extern char *strtotimeval(const char *str, struct timeval *tv);
+
+struct tm {
+ int tm_sec; /* seconds */
+ int tm_min; /* minutes */
+ int tm_hour; /* hours */
+ int tm_mday; /* day of the month */
+ int tm_mon; /* month */
+ int tm_year; /* year */
+ int tm_wday; /* day of the week */
+ int tm_yday; /* day in the year */
+ int tm_isdst; /* daylight saving time */
+
+ long int tm_gmtoff; /* Seconds east of UTC. */
+ const char *tm_zone; /* Timezone abbreviation. */
+
+};
+
+/* defining TM_ZONE indicates that we have a "timezone abbreviation" field in
+ * struct tm, the value should be the field name
+ */
+#define TM_ZONE tm_zone
+
+extern char* asctime(const struct tm* a);
+extern char* asctime_r(const struct tm* a, char* buf);
+
+/* Return the difference between TIME1 and TIME0. */
+extern double difftime (time_t __time1, time_t __time0);
+extern time_t mktime (struct tm *a);
+
+extern struct tm* localtime(const time_t *t);
+extern struct tm* localtime_r(const time_t *timep, struct tm *result);
+
+extern struct tm* gmtime(const time_t *timep);
+extern struct tm* gmtime_r(const time_t *timep, struct tm *result);
+
+extern char* strptime(const char *buf, const char *fmt, struct tm *tm);
+extern size_t strftime(char *s, size_t max, const char *format, const struct tm *tm);
+
+extern char *ctime(const time_t *timep);
+extern char *ctime_r(const time_t *timep, char *buf);
+
+extern void tzset(void);
+
+/* global includes */
+extern char* tzname[];
+extern int daylight;
+extern long int timezone;
+
+#define CLOCKS_PER_SEC 1000000
+
+extern clock_t clock(void);
+
+/* BIONIC: extra linux clock goodies */
+extern int clock_getres(int, struct timespec *);
+extern int clock_gettime(int, struct timespec *);
+
+#define CLOCK_REALTIME 0
+#define CLOCK_MONOTONIC 1
+#define CLOCK_PROCESS_CPUTIME_ID 2
+#define CLOCK_THREAD_CPUTIME_ID 3
+#define CLOCK_REALTIME_HR 4
+#define CLOCK_MONOTONIC_HR 5
+
+extern int timer_create(int, struct sigevent*, timer_t*);
+extern int timer_delete(timer_t);
+extern int timer_settime(timer_t timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue);
+extern int timer_gettime(timer_t timerid, struct itimerspec *value);
+extern int timer_getoverrun(timer_t timerid);
+
+__END_DECLS
+
+#endif /* _TIME_H_ */
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/time64.h b/ndk/build/platforms/android-3/arch-arm/usr/include/time64.h
deleted file mode 120000
index 9e4ca23..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/time64.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/time64.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/time64.h b/ndk/build/platforms/android-3/arch-arm/usr/include/time64.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/time64.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/time64.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/typeinfo b/ndk/build/platforms/android-3/arch-arm/usr/include/typeinfo
deleted file mode 120000
index 35bacb5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/typeinfo
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/typeinfo
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/typeinfo b/ndk/build/platforms/android-3/arch-arm/usr/include/typeinfo
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/typeinfo
rename to ndk/build/platforms/android-3/arch-arm/usr/include/typeinfo
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/unistd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/unistd.h
deleted file mode 120000
index 378e20d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/unistd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/unistd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/unistd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/unistd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/unistd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/unistd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/util.h b/ndk/build/platforms/android-3/arch-arm/usr/include/util.h
deleted file mode 120000
index c8de0fe..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/util.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/util.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/util.h b/ndk/build/platforms/android-3/arch-arm/usr/include/util.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/util.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/util.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/utility b/ndk/build/platforms/android-3/arch-arm/usr/include/utility
deleted file mode 120000
index f670e68..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/utility
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/utility
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/utility b/ndk/build/platforms/android-3/arch-arm/usr/include/utility
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/utility
rename to ndk/build/platforms/android-3/arch-arm/usr/include/utility
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/utime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/utime.h
deleted file mode 120000
index 520a474..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/utime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/utime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/utime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/utime.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/utime.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/utime.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/utmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/utmp.h
deleted file mode 120000
index 9fe8b95..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/utmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/utmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/utmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/utmp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/utmp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/utmp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/wchar.h b/ndk/build/platforms/android-3/arch-arm/usr/include/wchar.h
deleted file mode 120000
index 5a35644..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/wchar.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/wchar.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/wchar.h b/ndk/build/platforms/android-3/arch-arm/usr/include/wchar.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/wchar.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/wchar.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/wctype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/wctype.h
deleted file mode 120000
index 2a2a823..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/wctype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/wctype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/wctype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/wctype.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/wctype.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/wctype.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/zconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/zconf.h
deleted file mode 120000
index 10d4a1e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/zconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/zconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/zconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/zconf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/zconf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/zconf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/zlib.h b/ndk/build/platforms/android-3/arch-arm/usr/include/zlib.h
deleted file mode 120000
index d9e63a4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/zlib.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/zlib.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/zlib.h b/ndk/build/platforms/android-3/arch-arm/usr/include/zlib.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/zlib.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/zlib.h
diff --git a/ndk/build/platforms/android-3/common/include/stdint.h b/ndk/build/platforms/android-3/common/include/stdint.h
deleted file mode 100644
index 39a8ab8..0000000
--- a/ndk/build/platforms/android-3/common/include/stdint.h
+++ /dev/null
@@ -1,262 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _STDINT_H
-#define _STDINT_H
-
-#include <stddef.h>
-#include <sys/_types.h>
-
-
-
-#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS)
-# define __STDINT_LIMITS
-#endif
-
-#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS)
-# define __STDINT_MACROS
-#endif
-
-/* the definitions of STDINT_LIMITS depend on those of STDINT_MACROS */
-#if defined __STDINT_LIMITS && !defined __STDINT_MACROS
-# define __STDINT_MACROS
-#endif
-
-typedef __int8_t int8_t;
-typedef __uint8_t uint8_t;
-typedef __int16_t int16_t;
-typedef __uint16_t uint16_t;
-typedef __int32_t int32_t;
-typedef __uint32_t uint32_t;
-#if !defined(__STRICT_ANSI__)
-typedef __int64_t int64_t;
-typedef __uint64_t uint64_t;
-#endif
-
-/*
- * int8_t & uint8_t
- */
-
-typedef int8_t int_least8_t;
-typedef int8_t int_fast8_t;
-
-typedef uint8_t uint_least8_t;
-typedef uint8_t uint_fast8_t;
-
-#ifdef __STDINT_LIMITS
-# define INT8_MIN (-128)
-# define INT8_MAX (127)
-# define INT_LEAST8_MIN INT8_MIN
-# define INT_LEAST8_MAX INT8_MAX
-# define INT_FAST8_MIN INT8_MIN
-# define INT_FAST8_MAX INT8_MAX
-
-# define UINT8_MAX (255U)
-# define UINT_LEAST8_MAX UINT8_MAX
-# define UINT_FAST8_MAX UINT8_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-# define INT8_C(c) c
-# define INT_LEAST8_C(c) INT8_C(c)
-# define INT_FAST8_C(c) INT8_C(c)
-
-# define UINT8_C(c) c ## U
-# define UINT_LEAST8_C(c) UINT8_C(c)
-# define UINT_FAST8_C(c) UINT8_C(c)
-#endif
-
-/*
- * int16_t & uint16_t
- */
-
-
-typedef int16_t int_least16_t;
-typedef int32_t int_fast16_t;
-
-typedef uint16_t uint_least16_t;
-typedef uint32_t uint_fast16_t;
-
-#ifdef __STDINT_LIMITS
-# define INT16_MIN (-32768)
-# define INT16_MAX (32767)
-# define INT_LEAST16_MIN INT16_MIN
-# define INT_LEAST16_MAX INT16_MAX
-# define INT_FAST16_MIN INT32_MIN
-# define INT_FAST16_MAX INT32_MAX
-
-# define UINT16_MAX (65535U)
-# define UINT_LEAST16_MAX UINT16_MAX
-# define UINT_FAST16_MAX UINT32_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-# define INT16_C(c) c
-# define INT_LEAST16_C(c) INT16_C(c)
-# define INT_FAST16_C(c) INT32_C(c)
-
-# define UINT16_C(c) c ## U
-# define UINT_LEAST16_C(c) UINT16_C(c)
-# define UINT_FAST16_C(c) UINT32_C(c)
-#endif
-
-/*
- * int32_t & uint32_t
- */
-
-typedef int32_t int_least32_t;
-typedef int32_t int_fast32_t;
-
-typedef uint32_t uint_least32_t;
-typedef uint32_t uint_fast32_t;
-
-#ifdef __STDINT_LIMITS
-# define INT32_MIN (-2147483647-1)
-# define INT32_MAX (2147483647)
-# define INT_LEAST32_MIN INT32_MIN
-# define INT_LEAST32_MAX INT32_MAX
-# define INT_FAST32_MIN INT32_MIN
-# define INT_FAST32_MAX INT32_MAX
-
-# define UINT32_MAX (4294967295U)
-# define UINT_LEAST32_MAX UINT32_MAX
-# define UINT_FAST32_MAX UINT32_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-# define INT32_C(c) c
-# define INT_LEAST32_C(c) INT32_C(c)
-# define INT_FAST32_C(c) INT32_C(c)
-
-# define UINT32_C(c) c ## U
-# define UINT_LEAST32_C(c) UINT32_C(c)
-# define UINT_FAST32_C(c) UINT32_C(c)
-#endif
-
-#if !defined(__STRICT_ANSI__)
-/*
- * int64_t
- */
-typedef int64_t int_least64_t;
-typedef int64_t int_fast64_t;
-
-typedef uint64_t uint_least64_t;
-typedef uint64_t uint_fast64_t;
-
-
-#ifdef __STDINT_LIMITS
-# define INT64_MIN (__INT64_C(-9223372036854775807)-1)
-# define INT64_MAX (__INT64_C(9223372036854775807))
-# define INT_LEAST64_MIN INT64_MIN
-# define INT_LEAST64_MAX INT64_MAX
-# define INT_FAST64_MIN INT64_MIN
-# define INT_FAST64_MAX INT64_MAX
-# define UINT64_MAX (__UINT64_C(18446744073709551615))
-
-# define UINT_LEAST64_MAX UINT64_MAX
-# define UINT_FAST64_MAX UINT64_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-# define __INT64_C(c) c ## LL
-# define INT64_C(c) __INT64_C(c)
-# define INT_LEAST64_C(c) INT64_C(c)
-# define INT_FAST64_C(c) INT64_C(c)
-
-# define __UINT64_C(c) c ## ULL
-# define UINT64_C(c) __UINT64_C(c)
-# define UINT_LEAST64_C(c) UINT64_C(c)
-# define UINT_FAST64_C(c) UINT64_C(c)
-#endif
-
-
-# define __PRI64_RANK "ll"
-# define __PRIFAST_RANK ""
-# define __PRIPTR_RANK ""
-
-#endif /* !__STRICT_ANSI__ */
-
-/*
- * intptr_t & uintptr_t
- */
-
-typedef int intptr_t;
-typedef unsigned int uintptr_t;
-
-# define INTPTR_MIN INT32_MIN
-# define INTPTR_MAX INT32_MAX
-# define UINTPTR_MAX UINT32_MAX
-# define INTPTR_C(c) INT32_C(c)
-# define UINTPTR_C(c) UINT32_C(c)
-# define PTRDIFF_C(c) INT32_C(c)
-# define PTRDIFF_MIN INT32_MIN
-# define PTRDIFF_MAX INT32_MAX
-
-
-/*
- * intmax_t & uintmax_t
- */
-
-#if !defined(__STRICT_ANSI__)
-
-typedef uint64_t uintmax_t;
-typedef int64_t intmax_t;
-
-#define INTMAX_MIN INT64_MIN
-#define INTMAX_MAX INT64_MAX
-#define UINTMAX_MAX UINT64_MAX
-
-#define INTMAX_C(c) INT64_C(c)
-#define UINTMAX_C(c) UINT64_C(c)
-
-#else /* __STRICT_ANSI__ */
-
-typedef uint32_t uintmax_t;
-typedef int32_t intmax_t;
-
-#define INTMAX_MIN INT32_MIN
-#define INTMAX_MAX INT32_MAX
-#define UINTMAX_MAX UINT32_MAX
-
-#define INTMAX_C(c) INT32_C(c)
-#define UINTMAX_C(c) UINT32_C(c)
-
-#endif /* __STRICT_ANSI__ */
-
-
-/* size_t is defined by the GCC-specific <stddef.h> */
-#ifndef _SSIZE_T_DEFINED_
-#define _SSIZE_T_DEFINED_
-typedef long int ssize_t;
-#endif
-
-#define _BITSIZE 32
-
-/* Keep the kernel from trying to define these types... */
-#define __BIT_TYPES_DEFINED__
-
-#endif /* _STDINT_H */
diff --git a/ndk/build/platforms/android-3/common/include/strings.h b/ndk/build/platforms/android-3/common/include/strings.h
deleted file mode 100644
index 1f73e21..0000000
--- a/ndk/build/platforms/android-3/common/include/strings.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* $NetBSD: strings.h,v 1.10 2005/02/03 04:39:32 perry Exp $ */
-
-/*-
- * Copyright (c) 1998 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Klaus Klein.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the NetBSD
- * Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _STRINGS_H_
-#define _STRINGS_H_
-
-#include <sys/cdefs.h>
-
-__BEGIN_DECLS
-int bcmp(const void *, const void *, size_t);
-void bcopy(const void *, void *, size_t);
-void bzero(void *, size_t);
-int ffs(int);
-char *index(const char *, int);
-char *rindex(const char *, int);
-int strcasecmp(const char *, const char *);
-int strncasecmp(const char *, const char *, size_t);
-__END_DECLS
-
-#endif /* !defined(_STRINGS_H_) */
diff --git a/ndk/build/platforms/android-3/common/include/sys/stat.h b/ndk/build/platforms/android-3/common/include/sys/stat.h
deleted file mode 100644
index 23ab5ae..0000000
--- a/ndk/build/platforms/android-3/common/include/sys/stat.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _SYS_STAT_H_
-#define _SYS_STAT_H_
-
-#include <sys/cdefs.h>
-#include <sys/types.h>
-#include <sys/time.h>
-#include <linux/stat.h>
-
-#include <endian.h>
-
-__BEGIN_DECLS
-
-/* really matches stat64 in the kernel, hence the padding
- * Note: The kernel zero's the padded region because glibc might read them
- * in the hope that the kernel has stretched to using larger sizes.
- */
-struct stat {
- unsigned long long st_dev;
- unsigned char __pad0[4];
-
- unsigned long __st_ino;
- unsigned int st_mode;
- unsigned int st_nlink;
-
- unsigned long st_uid;
- unsigned long st_gid;
-
- unsigned long long st_rdev;
- unsigned char __pad3[4];
-
- long long st_size;
- unsigned long st_blksize;
- unsigned long long st_blocks;
-
- unsigned long st_atime;
- unsigned long st_atime_nsec;
-
- unsigned long st_mtime;
- unsigned long st_mtime_nsec;
-
- unsigned long st_ctime;
- unsigned long st_ctime_nsec;
-
- unsigned long long st_ino;
-};
-
-extern int chmod(const char *, mode_t);
-extern int fchmod(int, mode_t);
-extern int mkdir(const char *, mode_t);
-
-extern int stat(const char *, struct stat *);
-extern int fstat(int, struct stat *);
-extern int lstat(const char *, struct stat *);
-extern int mknod(const char *, mode_t, dev_t);
-extern mode_t umask(mode_t);
-
-#define stat64 stat
-#define fstat64 fstat
-#define lstat64 lstat
-
-static __inline__ int mkfifo(const char *__p, mode_t __m)
-{
- return mknod(__p, (__m & ~S_IFMT) | S_IFIFO, (dev_t)0);
-}
-
-extern int fstatat(int dirfd, const char *path, struct stat *buf, int flags);
-extern int mkdirat(int dirfd, const char *pathname, mode_t mode);
-extern int fchownat(int dirfd, const char *path, uid_t owner, gid_t group, int flags);
-extern int fchmodat(int dirfd, const char *path, mode_t mode, int flags);
-extern int renameat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath);
-
-__END_DECLS
-
-#endif /* _SYS_STAT_H_ */
diff --git a/ndk/build/platforms/android-3/common/include/time.h b/ndk/build/platforms/android-3/common/include/time.h
deleted file mode 100644
index 35c2358..0000000
--- a/ndk/build/platforms/android-3/common/include/time.h
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _TIME_H_
-#define _TIME_H_
-
-#include <sys/cdefs.h>
-#include <sys/time.h>
-
-#define __ARCH_SI_UID_T __kernel_uid32_t
-#include <asm/siginfo.h>
-#undef __ARCH_SI_UID_T
-
-__BEGIN_DECLS
-
-extern time_t time(time_t *);
-extern int nanosleep(const struct timespec *, struct timespec *);
-
-extern char *strtotimeval(const char *str, struct timeval *tv);
-
-struct tm {
- int tm_sec; /* seconds */
- int tm_min; /* minutes */
- int tm_hour; /* hours */
- int tm_mday; /* day of the month */
- int tm_mon; /* month */
- int tm_year; /* year */
- int tm_wday; /* day of the week */
- int tm_yday; /* day in the year */
- int tm_isdst; /* daylight saving time */
-
- long int tm_gmtoff; /* Seconds east of UTC. */
- const char *tm_zone; /* Timezone abbreviation. */
-
-};
-
-/* defining TM_ZONE indicates that we have a "timezone abbreviation" field in
- * struct tm, the value should be the field name
- */
-#define TM_ZONE tm_zone
-
-extern char* asctime(const struct tm* a);
-extern char* asctime_r(const struct tm* a, char* buf);
-
-/* Return the difference between TIME1 and TIME0. */
-extern double difftime (time_t __time1, time_t __time0);
-extern time_t mktime (struct tm *a);
-
-extern struct tm* localtime(const time_t *t);
-extern struct tm* localtime_r(const time_t *timep, struct tm *result);
-
-extern struct tm* gmtime(const time_t *timep);
-extern struct tm* gmtime_r(const time_t *timep, struct tm *result);
-
-extern char* strptime(const char *buf, const char *fmt, struct tm *tm);
-extern size_t strftime(char *s, size_t max, const char *format, const struct tm *tm);
-
-extern char *ctime(const time_t *timep);
-extern char *ctime_r(const time_t *timep, char *buf);
-
-/* global includes */
-extern char* tzname[];
-extern int daylight;
-extern long int timezone;
-
-#define CLOCKS_PER_SEC 1000000
-
-extern clock_t clock();
-
-/* BIONIC: extra linux clock goodies */
-extern int clock_getres(int, struct timespec *);
-extern int clock_gettime(int, struct timespec *);
-
-#define CLOCK_REALTIME 0
-#define CLOCK_MONOTONIC 1
-#define CLOCK_PROCESS_CPUTIME_ID 2
-#define CLOCK_THREAD_CPUTIME_ID 3
-#define CLOCK_REALTIME_HR 4
-#define CLOCK_MONOTONIC_HR 5
-
-extern int timer_create(int, struct sigevent*, timer_t*);
-extern int timer_delete(timer_t);
-extern int timer_settime(timer_t timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue);
-extern int timer_gettime(timer_t timerid, struct itimerspec *value);
-extern int timer_getoverrun(timer_t timerid);
-
-__END_DECLS
-
-#endif /* _TIME_H_ */
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/GLES b/ndk/build/platforms/android-4/arch-arm/usr/include/GLES
deleted file mode 120000
index ce7d570..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/GLES
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/GLES
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/GLES/gl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/GLES/gl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/GLES/gl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/GLES/gl.h
diff --git a/ndk/build/platforms/android-4/common/include/GLES/glext.h b/ndk/build/platforms/android-4/arch-arm/usr/include/GLES/glext.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/GLES/glext.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/GLES/glext.h
diff --git a/ndk/build/platforms/android-4/common/include/GLES/glplatform.h b/ndk/build/platforms/android-4/arch-arm/usr/include/GLES/glplatform.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/GLES/glplatform.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/GLES/glplatform.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/KHR b/ndk/build/platforms/android-4/arch-arm/usr/include/KHR
deleted file mode 120000
index dd088fc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/KHR
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/KHR
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/KHR/khrplatform.h b/ndk/build/platforms/android-4/arch-arm/usr/include/KHR/khrplatform.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/KHR/khrplatform.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/KHR/khrplatform.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/alloca.h b/ndk/build/platforms/android-4/arch-arm/usr/include/alloca.h
deleted file mode 120000
index ac859df..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/alloca.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/alloca.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/alloca.h b/ndk/build/platforms/android-4/arch-arm/usr/include/alloca.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/alloca.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/alloca.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/android/log.h b/ndk/build/platforms/android-4/arch-arm/usr/include/android/log.h
deleted file mode 120000
index da91a66..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/android/log.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/android/log.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/android/log.h b/ndk/build/platforms/android-4/arch-arm/usr/include/android/log.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/android/log.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/android/log.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/inet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/inet.h
deleted file mode 120000
index 760a19d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/inet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/arpa/inet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/arpa/inet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/inet.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/arpa/inet.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/arpa/inet.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/nameser.h b/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/nameser.h
deleted file mode 120000
index 73f9311..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/nameser.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/arpa/nameser.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/arpa/nameser.h b/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/nameser.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/arpa/nameser.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/arpa/nameser.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/4level-fixup.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/4level-fixup.h
deleted file mode 120000
index 4493a92..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/4level-fixup.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/4level-fixup.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/4level-fixup.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/4level-fixup.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/4level-fixup.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/4level-fixup.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/audit_dir_write.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/audit_dir_write.h
deleted file mode 120000
index 6576f52..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/audit_dir_write.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/audit_dir_write.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/audit_dir_write.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/audit_dir_write.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/audit_dir_write.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/audit_dir_write.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/__ffs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/__ffs.h
deleted file mode 120000
index 9a68edc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/__ffs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/__ffs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/__ffs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/__ffs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/__ffs.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/__ffs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/atomic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/atomic.h
deleted file mode 120000
index 32afeb4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/atomic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/atomic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/atomic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/atomic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/atomic.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/atomic.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/ffz.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/ffz.h
deleted file mode 120000
index 50c5214..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/ffz.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/ffz.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/ffz.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/ffz.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/ffz.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/ffz.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/find.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/find.h
deleted file mode 120000
index 9b40acd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/find.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/find.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/find.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/find.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/find.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/find.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls.h
deleted file mode 120000
index 5171887..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/fls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls64.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls64.h
deleted file mode 120000
index 8728e6a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls64.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/fls64.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls64.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls64.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls64.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls64.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/le.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/le.h
deleted file mode 120000
index 91b46c7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/le.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/le.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/le.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/le.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/le.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/le.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/non-atomic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
deleted file mode 120000
index 177973e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/non-atomic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/non-atomic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/non-atomic.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bug.h
deleted file mode 120000
index d898f3a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/bug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bug.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/bug.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bug.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/cputime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/cputime.h
deleted file mode 120000
index 7892fb4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/cputime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/cputime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/cputime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/cputime.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/cputime.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/cputime.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/emergency-restart.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/emergency-restart.h
deleted file mode 120000
index 3005c74..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/emergency-restart.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/emergency-restart.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/emergency-restart.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/emergency-restart.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/emergency-restart.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/emergency-restart.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno-base.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno-base.h
deleted file mode 120000
index 7b7d9bd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno-base.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/errno-base.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/errno-base.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno-base.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/errno-base.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno-base.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno.h
deleted file mode 120000
index bdd6dd4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/errno.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/fcntl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/fcntl.h
deleted file mode 120000
index 3506aa8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/fcntl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/fcntl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/fcntl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/fcntl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/fcntl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/fcntl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/futex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/futex.h
deleted file mode 120000
index cbd47bf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/futex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/futex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/futex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/futex.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/futex.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/futex.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ioctl.h
deleted file mode 120000
index 7a11623..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/ioctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ioctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ipc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ipc.h
deleted file mode 120000
index 339894e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ipc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/ipc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/ipc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ipc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/ipc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ipc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/local.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/local.h
deleted file mode 120000
index 0e9344d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/local.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/local.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/local.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/local.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/local.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/local.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/memory_model.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/memory_model.h
deleted file mode 120000
index 3bbc82b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/memory_model.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/memory_model.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/memory_model.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/memory_model.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/memory_model.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/memory_model.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mman.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mman.h
deleted file mode 120000
index fbab125..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mman.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/mman.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/mman.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mman.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/mman.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mman.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mutex-xchg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mutex-xchg.h
deleted file mode 120000
index c7bc238..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mutex-xchg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/mutex-xchg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/mutex-xchg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mutex-xchg.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/mutex-xchg.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mutex-xchg.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/percpu.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/percpu.h
deleted file mode 120000
index 2d899db..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/percpu.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/percpu.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/percpu.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/percpu.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/percpu.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/percpu.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable-nopud.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable-nopud.h
deleted file mode 120000
index ac2157e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable-nopud.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/pgtable-nopud.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/pgtable-nopud.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable-nopud.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/pgtable-nopud.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable-nopud.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable.h
deleted file mode 120000
index 4c70646..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/pgtable.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/pgtable.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/pgtable.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/poll.h
deleted file mode 120000
index 2bd359a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/poll.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/poll.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/poll.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/resource.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/resource.h
deleted file mode 120000
index 28f331a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/resource.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/resource.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/resource.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/resource.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/resource.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/resource.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/sections.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/sections.h
deleted file mode 120000
index c6885f3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/sections.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/sections.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/sections.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/sections.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/sections.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/sections.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/siginfo.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/siginfo.h
deleted file mode 120000
index d38f211..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/siginfo.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/siginfo.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/siginfo.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/siginfo.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/siginfo.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/signal.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/signal.h
deleted file mode 120000
index 05ca352..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/signal.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/signal.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/signal.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/signal.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/signal.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/signal.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/tlb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/tlb.h
deleted file mode 120000
index 94baa95..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/tlb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/tlb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/tlb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/tlb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/tlb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/tlb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/topology.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/topology.h
deleted file mode 120000
index e85b48f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/topology.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/topology.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/topology.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/topology.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/topology.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/topology.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/xor.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/xor.h
deleted file mode 120000
index baf2118..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/xor.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/xor.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/xor.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/xor.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/xor.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/xor.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/assert.h b/ndk/build/platforms/android-4/arch-arm/usr/include/assert.h
deleted file mode 120000
index 1572c5b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/assert.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/assert.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/assert.h b/ndk/build/platforms/android-4/arch-arm/usr/include/assert.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/assert.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/assert.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/byteswap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/byteswap.h
deleted file mode 120000
index 153ee73..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/byteswap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/byteswap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/byteswap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/byteswap.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/byteswap.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/byteswap.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/cstddef b/ndk/build/platforms/android-4/arch-arm/usr/include/cstddef
deleted file mode 120000
index cec20fd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/cstddef
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/cstddef
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/cstddef b/ndk/build/platforms/android-4/arch-arm/usr/include/cstddef
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/cstddef
rename to ndk/build/platforms/android-4/arch-arm/usr/include/cstddef
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/ctype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/ctype.h
deleted file mode 120000
index f1b315c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/ctype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/ctype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/ctype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/ctype.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/ctype.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/ctype.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/dirent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/dirent.h
deleted file mode 120000
index 315be03..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/dirent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/dirent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/dirent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/dirent.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/dirent.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/dirent.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/dlfcn.h b/ndk/build/platforms/android-4/arch-arm/usr/include/dlfcn.h
deleted file mode 120000
index 5748e5a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/dlfcn.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/dlfcn.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/dlfcn.h b/ndk/build/platforms/android-4/arch-arm/usr/include/dlfcn.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/dlfcn.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/dlfcn.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/elf.h
deleted file mode 120000
index f4e2f5e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/elf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/elf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/elf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/endian.h
index 04204ed..475b48c 100644
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/endian.h
+++ b/ndk/build/platforms/android-4/arch-arm/usr/include/endian.h
@@ -1,10 +1,33 @@
-/* $OpenBSD: endian.h,v 1.3 2005/12/13 00:35:23 millert Exp $ */
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _ENDIAN_H_
+#define _ENDIAN_H_
-#ifdef __ARMEB__
-#define _BYTE_ORDER _BIG_ENDIAN
-#else
-#define _BYTE_ORDER _LITTLE_ENDIAN
-#endif
-#define __STRICT_ALIGNMENT
-#include <sys/types.h>
#include <sys/endian.h>
+
+#endif /* _ENDIAN_H_ */
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/err.h b/ndk/build/platforms/android-4/arch-arm/usr/include/err.h
deleted file mode 120000
index de81816..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/err.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/err.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/err.h b/ndk/build/platforms/android-4/arch-arm/usr/include/err.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/err.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/err.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/errno.h
deleted file mode 120000
index 2e638ba..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/errno.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/errno.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/errno.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/fcntl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/fcntl.h
deleted file mode 120000
index cb8c1df..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/fcntl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/fcntl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/fcntl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/fcntl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/fcntl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/fcntl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/features.h b/ndk/build/platforms/android-4/arch-arm/usr/include/features.h
deleted file mode 120000
index 6587ebd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/features.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/features.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/features.h b/ndk/build/platforms/android-4/arch-arm/usr/include/features.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/features.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/features.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/fnmatch.h b/ndk/build/platforms/android-4/arch-arm/usr/include/fnmatch.h
deleted file mode 120000
index 52c0687..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/fnmatch.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/fnmatch.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/fnmatch.h b/ndk/build/platforms/android-4/arch-arm/usr/include/fnmatch.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/fnmatch.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/fnmatch.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/getopt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/getopt.h
deleted file mode 120000
index 857cf27..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/getopt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/getopt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/getopt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/getopt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/getopt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/getopt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/grp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/grp.h
deleted file mode 120000
index c599451..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/grp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/grp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/grp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/grp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/grp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/grp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/inttypes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/inttypes.h
deleted file mode 120000
index 5283d60..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/inttypes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/inttypes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/inttypes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/inttypes.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/inttypes.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/inttypes.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/jni.h b/ndk/build/platforms/android-4/arch-arm/usr/include/jni.h
deleted file mode 120000
index e49af21..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/jni.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/jni.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/jni.h b/ndk/build/platforms/android-4/arch-arm/usr/include/jni.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/jni.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/jni.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/lastlog.h b/ndk/build/platforms/android-4/arch-arm/usr/include/lastlog.h
deleted file mode 120000
index fe63cd3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/lastlog.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/lastlog.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/lastlog.h b/ndk/build/platforms/android-4/arch-arm/usr/include/lastlog.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/lastlog.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/lastlog.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/libgen.h b/ndk/build/platforms/android-4/arch-arm/usr/include/libgen.h
deleted file mode 120000
index 0f626b6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/libgen.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/libgen.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/libgen.h b/ndk/build/platforms/android-4/arch-arm/usr/include/libgen.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/libgen.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/libgen.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/limits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/limits.h
deleted file mode 120000
index 60f67bf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/limits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/limits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/limits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/limits.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/limits.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/limits.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/a.out.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/a.out.h
deleted file mode 120000
index e1bffda..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/a.out.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/a.out.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/a.out.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/a.out.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/a.out.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/a.out.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/aio_abi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/aio_abi.h
deleted file mode 120000
index cd94485..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/aio_abi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/aio_abi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/aio_abi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/aio_abi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/aio_abi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/aio_abi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/akm8976.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/akm8976.h
deleted file mode 120000
index 1d8b858..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/akm8976.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/akm8976.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/akm8976.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/akm8976.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/akm8976.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/akm8976.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_alarm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_alarm.h
deleted file mode 120000
index 383aabd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_alarm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/android_alarm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/android_alarm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_alarm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/android_alarm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_alarm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_pmem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_pmem.h
deleted file mode 120000
index 2485ad8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_pmem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/android_pmem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/android_pmem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_pmem.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/android_pmem.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_pmem.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_power.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_power.h
deleted file mode 120000
index 05f970a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_power.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/android_power.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/android_power.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_power.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/android_power.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_power.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/apm_bios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/apm_bios.h
deleted file mode 120000
index cbcfb5a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/apm_bios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/apm_bios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/apm_bios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/apm_bios.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/apm_bios.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/apm_bios.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ashmem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ashmem.h
deleted file mode 120000
index 3cc1881..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ashmem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ashmem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ashmem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ashmem.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ashmem.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ashmem.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ata.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ata.h
deleted file mode 120000
index 4640b5f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ata.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ata.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ata.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ata.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ata.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ata.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atm.h
deleted file mode 120000
index 377242f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/atm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/atm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/atm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmapi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmapi.h
deleted file mode 120000
index 0d7f085..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmapi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmapi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/atmapi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmapi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/atmapi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmapi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmdev.h
deleted file mode 120000
index f1f9a5f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/atmdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/atmdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmioc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmioc.h
deleted file mode 120000
index 3b1e711..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmioc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmioc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/atmioc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmioc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/atmioc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmioc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmppp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmppp.h
deleted file mode 120000
index 785c8fb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmppp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmppp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/atmppp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmppp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/atmppp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmppp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmsap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmsap.h
deleted file mode 120000
index bc0f5a8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmsap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmsap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/atmsap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmsap.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/atmsap.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmsap.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/attribute_container.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/attribute_container.h
deleted file mode 120000
index 3834481..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/attribute_container.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/attribute_container.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/attribute_container.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/attribute_container.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/attribute_container.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/attribute_container.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auto_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auto_fs.h
deleted file mode 120000
index 8d3e7b9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auto_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/auto_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/auto_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auto_fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/auto_fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/auto_fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/autoconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/autoconf.h
deleted file mode 120000
index 41a58f5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/autoconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/autoconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/autoconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/autoconf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/autoconf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/autoconf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auxvec.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auxvec.h
deleted file mode 120000
index 5602220..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auxvec.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/auxvec.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/auxvec.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auxvec.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/auxvec.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/auxvec.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/backing-dev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/backing-dev.h
deleted file mode 120000
index 427296e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/backing-dev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/backing-dev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/backing-dev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/backing-dev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/backing-dev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/backing-dev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binder.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binder.h
deleted file mode 120000
index 39fcca7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binder.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/binder.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/binder.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binder.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/binder.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/binder.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binfmts.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binfmts.h
deleted file mode 120000
index d938c2f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binfmts.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/binfmts.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/binfmts.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binfmts.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/binfmts.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/binfmts.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bio.h
deleted file mode 120000
index 9a8ee71..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/bio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/bio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/bio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/bio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitmap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitmap.h
deleted file mode 120000
index 5db6297..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitmap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/bitmap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/bitmap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitmap.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/bitmap.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitmap.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitops.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitops.h
deleted file mode 120000
index 5d0fcbb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitops.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/bitops.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/bitops.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitops.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/bitops.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitops.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkdev.h
deleted file mode 120000
index fb45957..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/blkdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/blkdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/blkdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkpg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkpg.h
deleted file mode 120000
index bc5f38f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkpg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/blkpg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/blkpg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkpg.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/blkpg.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkpg.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blockgroup_lock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blockgroup_lock.h
deleted file mode 120000
index 587f7f1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blockgroup_lock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/blockgroup_lock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/blockgroup_lock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blockgroup_lock.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/blockgroup_lock.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/blockgroup_lock.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/big_endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/big_endian.h
deleted file mode 120000
index ce97246..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/big_endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/big_endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/byteorder/big_endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/big_endian.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/byteorder/big_endian.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/big_endian.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/generic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/generic.h
deleted file mode 120000
index d865701..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/generic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/generic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/byteorder/generic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/generic.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/byteorder/generic.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/generic.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/little_endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/little_endian.h
deleted file mode 120000
index 9b117fa..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/little_endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/little_endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/byteorder/little_endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/little_endian.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/byteorder/little_endian.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/little_endian.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swab.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swab.h
deleted file mode 120000
index b3da56e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swab.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/swab.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/byteorder/swab.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swab.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/byteorder/swab.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swab.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swabb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swabb.h
deleted file mode 120000
index d6d7ade..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swabb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/swabb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/byteorder/swabb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swabb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/byteorder/swabb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swabb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cache.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cache.h
deleted file mode 120000
index 74ed7c9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cache.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cache.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/cache.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cache.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/cache.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/cache.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/calc64.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/calc64.h
deleted file mode 120000
index e12ad54..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/calc64.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/calc64.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/calc64.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/calc64.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/calc64.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/calc64.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capability.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capability.h
deleted file mode 120000
index 9674918..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capability.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/capability.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/capability.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capability.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/capability.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/capability.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capi.h
deleted file mode 120000
index e937bc1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/capi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/capi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/capi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/capi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdev.h
deleted file mode 120000
index aa3f937..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/cdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/cdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdrom.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdrom.h
deleted file mode 120000
index f8a7cfe..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdrom.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cdrom.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/cdrom.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdrom.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/cdrom.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdrom.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/circ_buf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/circ_buf.h
deleted file mode 120000
index ada0bca..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/circ_buf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/circ_buf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/circ_buf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/circ_buf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/circ_buf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/circ_buf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/clk.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/clk.h
deleted file mode 120000
index 246f4ad..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/clk.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/clk.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/clk.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/clk.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/clk.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/clk.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda.h
deleted file mode 120000
index e577be5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/coda.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/coda.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/coda.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda_fs_i.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda_fs_i.h
deleted file mode 120000
index bd7a507..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda_fs_i.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/coda_fs_i.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/coda_fs_i.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda_fs_i.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/coda_fs_i.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda_fs_i.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compat.h
deleted file mode 120000
index c323a32..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/compat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/compat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compat.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/compat.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/compat.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler-gcc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler-gcc.h
deleted file mode 120000
index 6609cf6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler-gcc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/compiler-gcc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/compiler-gcc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler-gcc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/compiler-gcc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler-gcc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler.h
deleted file mode 120000
index c3c0a7c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/compiler.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/compiler.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/compiler.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/completion.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/completion.h
deleted file mode 120000
index af28044..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/completion.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/completion.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/completion.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/completion.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/completion.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/completion.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/config.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/config.h
deleted file mode 120000
index 71028f6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/config.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/config.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/config.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/config.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/config.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/config.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/console_struct.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/console_struct.h
deleted file mode 120000
index 7aa8514..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/console_struct.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/console_struct.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/console_struct.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/console_struct.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/console_struct.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/console_struct.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpu.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpu.h
deleted file mode 120000
index 2608247..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpu.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cpu.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/cpu.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpu.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/cpu.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpu.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpumask.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpumask.h
deleted file mode 120000
index c8f6de0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpumask.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cpumask.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/cpumask.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpumask.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/cpumask.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpumask.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ctype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ctype.h
deleted file mode 120000
index e008d1e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ctype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ctype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ctype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ctype.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ctype.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ctype.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dccp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dccp.h
deleted file mode 120000
index bc11d40..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dccp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dccp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/dccp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dccp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/dccp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/dccp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/debug_locks.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/debug_locks.h
deleted file mode 120000
index 561a5bc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/debug_locks.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/debug_locks.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/debug_locks.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/debug_locks.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/debug_locks.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/debug_locks.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/delay.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/delay.h
deleted file mode 120000
index d934a13..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/delay.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/delay.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/delay.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/delay.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/delay.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/delay.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/device.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/device.h
deleted file mode 120000
index 2440aba..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/device.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/device.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/device.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/device.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/device.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/device.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dirent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dirent.h
deleted file mode 120000
index f16f4a4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dirent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dirent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/dirent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dirent.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/dirent.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/dirent.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dm-ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dm-ioctl.h
deleted file mode 120000
index d7305d2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dm-ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dm-ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/dm-ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dm-ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/dm-ioctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/dm-ioctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dma-mapping.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dma-mapping.h
deleted file mode 120000
index d8f5664..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dma-mapping.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dma-mapping.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/dma-mapping.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dma-mapping.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/dma-mapping.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/dma-mapping.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dmaengine.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dmaengine.h
deleted file mode 120000
index 31efa05..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dmaengine.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dmaengine.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/dmaengine.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dmaengine.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/dmaengine.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/dmaengine.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_dir.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_dir.h
deleted file mode 120000
index 5aae574..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_dir.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/efs_dir.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/efs_dir.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_dir.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/efs_dir.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_dir.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_i.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_i.h
deleted file mode 120000
index 1ea12f6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_i.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/efs_fs_i.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/efs_fs_i.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_i.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/efs_fs_i.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_i.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_sb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_sb.h
deleted file mode 120000
index 9ece7e1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_sb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/efs_fs_sb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/efs_fs_sb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_sb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/efs_fs_sb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_sb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elevator.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elevator.h
deleted file mode 120000
index a15375f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elevator.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/elevator.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/elevator.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elevator.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/elevator.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/elevator.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf-em.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf-em.h
deleted file mode 120000
index a70534c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf-em.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/elf-em.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/elf-em.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf-em.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/elf-em.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf-em.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf.h
deleted file mode 120000
index 4455674..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/elf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/err.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/err.h
deleted file mode 120000
index 7bc3976..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/err.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/err.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/err.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/err.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/err.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/err.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errno.h
deleted file mode 120000
index 17901cf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errno.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/errno.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/errno.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errqueue.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errqueue.h
deleted file mode 120000
index f857679..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errqueue.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/errqueue.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/errqueue.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errqueue.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/errqueue.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/errqueue.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/etherdevice.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/etherdevice.h
deleted file mode 120000
index c6fc657..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/etherdevice.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/etherdevice.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/etherdevice.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/etherdevice.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/etherdevice.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/etherdevice.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext2_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext2_fs.h
deleted file mode 120000
index 6d1ef48..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext2_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ext2_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ext2_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext2_fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ext2_fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext2_fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext3_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext3_fs.h
deleted file mode 120000
index 401d884..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext3_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ext3_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ext3_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext3_fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ext3_fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext3_fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fadvise.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fadvise.h
deleted file mode 120000
index 28391d0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fadvise.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fadvise.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/fadvise.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fadvise.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/fadvise.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/fadvise.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fb.h
deleted file mode 120000
index 678e85b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/fb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/fb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/fb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fcntl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fcntl.h
deleted file mode 120000
index 628a481..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fcntl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fcntl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/fcntl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fcntl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/fcntl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/fcntl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fd.h
deleted file mode 120000
index 27d6d08..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/fd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/fd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/fd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/file.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/file.h
deleted file mode 120000
index d063b5e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/file.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/file.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/file.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/file.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/file.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/file.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/filter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/filter.h
deleted file mode 120000
index 54c78a3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/filter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/filter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/filter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/filter.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/filter.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/filter.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fs.h
deleted file mode 120000
index c72717d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ftape.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ftape.h
deleted file mode 120000
index 59efd2b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ftape.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ftape.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ftape.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ftape.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ftape.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ftape.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/futex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/futex.h
deleted file mode 120000
index cbfdedb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/futex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/futex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/futex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/futex.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/futex.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/futex.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/genhd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/genhd.h
deleted file mode 120000
index 4182ac6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/genhd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/genhd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/genhd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/genhd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/genhd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/genhd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/gfp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/gfp.h
deleted file mode 120000
index 955489e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/gfp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/gfp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/gfp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/gfp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/gfp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/gfp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hardirq.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hardirq.h
deleted file mode 120000
index 01128bd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hardirq.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hardirq.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/hardirq.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hardirq.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/hardirq.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/hardirq.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdlc/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdlc/ioctl.h
deleted file mode 120000
index 7679e36..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdlc/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/hdlc/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/hdlc/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdlc/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/hdlc/ioctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdlc/ioctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdreg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdreg.h
deleted file mode 120000
index 35aea04..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdreg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hdreg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/hdreg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdreg.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/hdreg.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdreg.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdsmart.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdsmart.h
deleted file mode 120000
index 383f58c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdsmart.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hdsmart.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/hdsmart.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdsmart.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/hdsmart.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdsmart.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/highmem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/highmem.h
deleted file mode 120000
index 0f41fc7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/highmem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/highmem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/highmem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/highmem.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/highmem.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/highmem.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hil.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hil.h
deleted file mode 120000
index 2bee8bb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hil.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hil.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/hil.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hil.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/hil.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/hil.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/i2c.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/i2c.h
deleted file mode 120000
index 514ff43..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/i2c.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/i2c.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/i2c.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/i2c.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/i2c.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/i2c.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/icmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/icmp.h
deleted file mode 120000
index 87771a7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/icmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/icmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/icmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/icmp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/icmp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/icmp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if.h
deleted file mode 120000
index 176aae6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arcnet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arcnet.h
deleted file mode 120000
index 0d04ae3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arcnet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_arcnet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_arcnet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arcnet.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_arcnet.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arcnet.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arp.h
deleted file mode 120000
index 536a142..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_arp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_arp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_arp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_bridge.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_bridge.h
deleted file mode 120000
index ad36ad5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_bridge.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_bridge.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_bridge.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_bridge.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_bridge.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_bridge.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ether.h
deleted file mode 120000
index 4dc3348..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ether.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_ether.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ether.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fc.h
deleted file mode 120000
index 087ec19..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_fc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_fc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_fc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fddi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fddi.h
deleted file mode 120000
index 6c439ad..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fddi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_fddi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_fddi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fddi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_fddi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fddi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_hippi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_hippi.h
deleted file mode 120000
index f4febf9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_hippi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_hippi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_hippi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_hippi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_hippi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_hippi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_packet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_packet.h
deleted file mode 120000
index d48d404..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_packet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_packet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_packet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_packet.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_packet.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_packet.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ppp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ppp.h
deleted file mode 120000
index 1c0292e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ppp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_ppp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_ppp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ppp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_ppp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ppp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tr.h
deleted file mode 120000
index 115cd17..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_tr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_tr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tr.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_tr.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tr.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tun.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tun.h
deleted file mode 120000
index f127941..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tun.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_tun.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_tun.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tun.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_tun.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tun.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_vlan.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_vlan.h
deleted file mode 120000
index f20fce0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_vlan.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_vlan.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_vlan.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_vlan.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_vlan.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_vlan.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in.h
deleted file mode 120000
index 0e127e0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/in.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/in.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/in.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/in.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in6.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in6.h
deleted file mode 120000
index 18c3130..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in6.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/in6.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/in6.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in6.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/in6.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/in6.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/init.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/init.h
deleted file mode 120000
index 488bb0a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/init.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/init.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/init.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/init.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/init.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/init.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/inotify.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/inotify.h
deleted file mode 120000
index 41670ad..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/inotify.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/inotify.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/inotify.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/inotify.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/inotify.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/inotify.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/input.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/input.h
deleted file mode 120000
index 423edd7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/input.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/input.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/input.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/input.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/input.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/input.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/interrupt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/interrupt.h
deleted file mode 120000
index b5cd63c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/interrupt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/interrupt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/interrupt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/interrupt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/interrupt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/interrupt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioctl.h
deleted file mode 120000
index b30e479..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ioctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioport.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioport.h
deleted file mode 120000
index d90526d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioport.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ioport.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ioport.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioport.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ioport.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioport.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioprio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioprio.h
deleted file mode 120000
index 1634241..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioprio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ioprio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ioprio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioprio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ioprio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioprio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ip.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ip.h
deleted file mode 120000
index e89967b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ip.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ip.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ip.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ip.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ip.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ip.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipc.h
deleted file mode 120000
index 60f3881..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ipc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ipc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_msgdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_msgdefs.h
deleted file mode 120000
index 2cfe5ac..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_msgdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipmi_msgdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ipmi_msgdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_msgdefs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ipmi_msgdefs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_msgdefs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_smi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_smi.h
deleted file mode 120000
index 9a796a2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_smi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipmi_smi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ipmi_smi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_smi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ipmi_smi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_smi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipx.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipx.h
deleted file mode 120000
index dd5d4b9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipx.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipx.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ipx.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipx.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ipx.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipx.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq.h
deleted file mode 120000
index aa6cf1a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irq.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/irq.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/irq.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq_cpustat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq_cpustat.h
deleted file mode 120000
index 4a329b4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq_cpustat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irq_cpustat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/irq_cpustat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq_cpustat.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/irq_cpustat.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq_cpustat.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqflags.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqflags.h
deleted file mode 120000
index fa80886..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqflags.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irqflags.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/irqflags.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqflags.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/irqflags.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqflags.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqreturn.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqreturn.h
deleted file mode 120000
index 739fa62..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqreturn.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irqreturn.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/irqreturn.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqreturn.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/irqreturn.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqreturn.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jbd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jbd.h
deleted file mode 120000
index 9594286..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jbd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/jbd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/jbd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jbd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/jbd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/jbd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jiffies.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jiffies.h
deleted file mode 120000
index 5accf6a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jiffies.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/jiffies.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/jiffies.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jiffies.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/jiffies.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/jiffies.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kd.h
deleted file mode 120000
index e7005fa..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kdev_t.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kdev_t.h
deleted file mode 120000
index fffcdac..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kdev_t.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kdev_t.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kdev_t.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kdev_t.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kdev_t.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kdev_t.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel.h
deleted file mode 120000
index 4b3447c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kernel.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kernel.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kernel.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel_stat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel_stat.h
deleted file mode 120000
index 2f1598b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel_stat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kernel_stat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kernel_stat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel_stat.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kernel_stat.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel_stat.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernelcapi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernelcapi.h
deleted file mode 120000
index 78f09ac..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernelcapi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kernelcapi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kernelcapi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernelcapi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kernelcapi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernelcapi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kexec.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kexec.h
deleted file mode 120000
index 883b34f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kexec.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kexec.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kexec.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kexec.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kexec.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kexec.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/key.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/key.h
deleted file mode 120000
index a43f262..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/key.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/key.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/key.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/key.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/key.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/key.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keyboard.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keyboard.h
deleted file mode 120000
index f1e952c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keyboard.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/keyboard.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/keyboard.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keyboard.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/keyboard.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/keyboard.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keychord.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keychord.h
deleted file mode 120000
index 4af7a30..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keychord.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/keychord.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/keychord.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keychord.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/keychord.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/keychord.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/klist.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/klist.h
deleted file mode 120000
index 6c121e7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/klist.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/klist.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/klist.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/klist.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/klist.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/klist.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kmod.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kmod.h
deleted file mode 120000
index 0fc11ce..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kmod.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kmod.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kmod.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kmod.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kmod.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kmod.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kobject.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kobject.h
deleted file mode 120000
index 1e2eb82..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kobject.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kobject.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kobject.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kobject.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kobject.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kobject.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kref.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kref.h
deleted file mode 120000
index 84f0760..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kref.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kref.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kref.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kref.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kref.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kref.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ktime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ktime.h
deleted file mode 120000
index bd9e539..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ktime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ktime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ktime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ktime.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ktime.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ktime.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/limits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/limits.h
deleted file mode 120000
index 998a2f3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/limits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/limits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/limits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/limits.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/limits.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/limits.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/linkage.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/linkage.h
deleted file mode 120000
index 9981e49..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/linkage.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/linkage.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/linkage.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/linkage.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/linkage.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/linkage.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/list.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/list.h
deleted file mode 120000
index 8b5214f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/list.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/list.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/list.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/list.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/list.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/list.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/nlm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/nlm.h
deleted file mode 120000
index 1f70297..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/nlm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/lockd/nlm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/lockd/nlm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/nlm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/lockd/nlm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/nlm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/xdr.h
deleted file mode 120000
index 59987cf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/lockd/xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/lockd/xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/xdr.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/lockd/xdr.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/xdr.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockdep.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockdep.h
deleted file mode 120000
index 6a6ae87..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockdep.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/lockdep.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/lockdep.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockdep.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/lockdep.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockdep.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/loop.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/loop.h
deleted file mode 120000
index 6c91215..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/loop.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/loop.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/loop.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/loop.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/loop.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/loop.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/magic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/magic.h
deleted file mode 120000
index afafcfd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/magic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/magic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/magic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/magic.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/magic.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/magic.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/major.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/major.h
deleted file mode 120000
index f08b244..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/major.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/major.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/major.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/major.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/major.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/major.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mc146818rtc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mc146818rtc.h
deleted file mode 120000
index 4286741..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mc146818rtc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mc146818rtc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mc146818rtc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mc146818rtc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mc146818rtc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mc146818rtc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mca.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mca.h
deleted file mode 120000
index 1f34bde..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mca.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mca.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mca.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mca.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mca.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mca.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempolicy.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempolicy.h
deleted file mode 120000
index 2690b14..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempolicy.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mempolicy.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mempolicy.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempolicy.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mempolicy.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempolicy.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempool.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempool.h
deleted file mode 120000
index eaed026..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempool.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mempool.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mempool.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempool.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mempool.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempool.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/miscdevice.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/miscdevice.h
deleted file mode 120000
index 7de3342..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/miscdevice.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/miscdevice.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/miscdevice.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/miscdevice.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/miscdevice.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/miscdevice.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mm.h
deleted file mode 120000
index 111cc15..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/card.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/card.h
deleted file mode 120000
index 0a25330..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/card.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mmc/card.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mmc/card.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/card.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mmc/card.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/card.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/host.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/host.h
deleted file mode 120000
index 61ab0f6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/host.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mmc/host.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mmc/host.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/host.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mmc/host.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/host.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/mmc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/mmc.h
deleted file mode 120000
index ca8b23e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/mmc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mmc/mmc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mmc/mmc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/mmc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mmc/mmc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/mmc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmzone.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmzone.h
deleted file mode 120000
index 6bd8d97..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmzone.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mmzone.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mmzone.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmzone.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mmzone.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmzone.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mod_devicetable.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mod_devicetable.h
deleted file mode 120000
index 1104eb5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mod_devicetable.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mod_devicetable.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mod_devicetable.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mod_devicetable.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mod_devicetable.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mod_devicetable.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/module.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/module.h
deleted file mode 120000
index 93b3b19..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/module.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/module.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/module.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/module.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/module.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/module.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/moduleparam.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/moduleparam.h
deleted file mode 120000
index 1f544b7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/moduleparam.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/moduleparam.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/moduleparam.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/moduleparam.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/moduleparam.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/moduleparam.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mount.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mount.h
deleted file mode 120000
index 5ac8a42..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mount.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mount.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mount.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mount.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mount.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mount.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msdos_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msdos_fs.h
deleted file mode 120000
index de01ab3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msdos_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msdos_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/msdos_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msdos_fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/msdos_fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/msdos_fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msg.h
deleted file mode 120000
index 4b5c4f9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/msg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msg.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/msg.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/msg.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_adsp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_adsp.h
deleted file mode 120000
index 620ab8d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_adsp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msm_adsp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/msm_adsp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_adsp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/msm_adsp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_adsp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_audio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_audio.h
deleted file mode 120000
index 730a831..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_audio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msm_audio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/msm_audio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_audio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/msm_audio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_audio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_mdp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_mdp.h
deleted file mode 120000
index d4ff409..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_mdp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msm_mdp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/msm_mdp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_mdp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/msm_mdp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_mdp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mt9t013.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mt9t013.h
deleted file mode 120000
index 8a2b5c0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mt9t013.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mt9t013.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mt9t013.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mt9t013.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mt9t013.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mt9t013.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/bbm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/bbm.h
deleted file mode 120000
index d2d24c5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/bbm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/bbm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/bbm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/bbm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/bbm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/bbm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/blktrans.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/blktrans.h
deleted file mode 120000
index f16b497..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/blktrans.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/blktrans.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/blktrans.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/blktrans.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/blktrans.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/blktrans.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi.h
deleted file mode 120000
index 468e5e8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/cfi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/cfi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/cfi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi_endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi_endian.h
deleted file mode 120000
index 3f9e287..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi_endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/cfi_endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/cfi_endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi_endian.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/cfi_endian.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi_endian.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/compatmac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/compatmac.h
deleted file mode 120000
index ed02458..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/compatmac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/compatmac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/compatmac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/compatmac.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/compatmac.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/compatmac.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/flashchip.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/flashchip.h
deleted file mode 120000
index 96a349d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/flashchip.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/flashchip.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/flashchip.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/flashchip.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/flashchip.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/flashchip.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/map.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/map.h
deleted file mode 120000
index fee2465..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/map.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/map.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/map.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/map.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/map.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/map.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/mtd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/mtd.h
deleted file mode 120000
index 7821ca4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/mtd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/mtd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/mtd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/mtd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/mtd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/mtd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand.h
deleted file mode 120000
index 00fe26e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/nand.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/nand.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/nand.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand_ecc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand_ecc.h
deleted file mode 120000
index 3c780f2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand_ecc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/nand_ecc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/nand_ecc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand_ecc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/nand_ecc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand_ecc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nftl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nftl.h
deleted file mode 120000
index b68add4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nftl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/nftl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/nftl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nftl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/nftl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nftl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/onenand_regs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/onenand_regs.h
deleted file mode 120000
index cf98f5e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/onenand_regs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/onenand_regs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/onenand_regs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/onenand_regs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/onenand_regs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/onenand_regs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/partitions.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/partitions.h
deleted file mode 120000
index 1943ac4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/partitions.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/partitions.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/partitions.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/partitions.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/partitions.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/partitions.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtio.h
deleted file mode 120000
index e4a665b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mtio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex-debug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex-debug.h
deleted file mode 120000
index b03b89e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex-debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mutex-debug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mutex-debug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex-debug.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mutex-debug.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex-debug.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex.h
deleted file mode 120000
index adaf51c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mutex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mutex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mutex.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp.h
deleted file mode 120000
index 36de989..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ncp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ncp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ncp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_mount.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_mount.h
deleted file mode 120000
index d8e6b48..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_mount.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ncp_mount.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ncp_mount.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_mount.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ncp_mount.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_mount.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_no.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_no.h
deleted file mode 120000
index 4e59a2b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_no.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ncp_no.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ncp_no.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_no.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ncp_no.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_no.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/net.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/net.h
deleted file mode 120000
index 9ff68ce..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/net.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/net.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/net.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/net.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/net.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/net.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netdevice.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netdevice.h
deleted file mode 120000
index 103b2df..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netdevice.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netdevice.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netdevice.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netdevice.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netdevice.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netdevice.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter.h
deleted file mode 120000
index 81c9328..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
deleted file mode 120000
index 840faca..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_common.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_common.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_common.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
deleted file mode 120000
index 3a8e544..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_ftp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_ftp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_ftp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
deleted file mode 120000
index 17c5b25..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_sctp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_sctp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_sctp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
deleted file mode 120000
index 483187d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_tcp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_tcp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_tcp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
deleted file mode 120000
index 2335e58..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_tuple_common.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_tuple_common.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_tuple_common.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink.h
deleted file mode 120000
index 434215d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nfnetlink.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nfnetlink.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nfnetlink.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
deleted file mode 120000
index 87cc812..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nfnetlink_conntrack.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nfnetlink_conntrack.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nfnetlink_conntrack.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/x_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/x_tables.h
deleted file mode 120000
index d2b9746..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/x_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/x_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/x_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/x_tables.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/x_tables.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/x_tables.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
deleted file mode 120000
index a3b868a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_CLASSIFY.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_CLASSIFY.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_CLASSIFY.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
deleted file mode 120000
index 725dafb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_CONNSECMARK.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_CONNSECMARK.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_CONNSECMARK.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
deleted file mode 120000
index 851f571..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_NFQUEUE.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_NFQUEUE.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_NFQUEUE.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
deleted file mode 120000
index 02dfc1b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_SECMARK.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_SECMARK.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_SECMARK.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_comment.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_comment.h
deleted file mode 120000
index 141f426..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_comment.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_comment.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_comment.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_comment.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_comment.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_comment.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_connbytes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
deleted file mode 120000
index 7e67ee9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_connbytes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_connbytes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_connbytes.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_conntrack.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
deleted file mode 120000
index 04a1729..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_conntrack.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_conntrack.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_conntrack.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_dccp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_dccp.h
deleted file mode 120000
index 6bdc874..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_dccp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_dccp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_dccp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_dccp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_dccp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_dccp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_esp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_esp.h
deleted file mode 120000
index a27d0cc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_esp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_esp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_esp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_esp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_esp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_esp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_helper.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_helper.h
deleted file mode 120000
index 6b958db..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_helper.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_helper.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_helper.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_helper.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_helper.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_helper.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_length.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_length.h
deleted file mode 120000
index 680ef6b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_length.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_length.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_length.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_length.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_length.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_length.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_limit.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_limit.h
deleted file mode 120000
index 24bce98..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_limit.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_limit.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_limit.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_limit.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_limit.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_limit.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_mac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_mac.h
deleted file mode 120000
index 24af1fc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_mac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_mac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_mac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_mac.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_mac.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_mac.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_multiport.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_multiport.h
deleted file mode 120000
index 80b337d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_multiport.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_multiport.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_multiport.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_multiport.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_multiport.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_multiport.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_physdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_physdev.h
deleted file mode 120000
index c6ad18c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_physdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_physdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_physdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_physdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_physdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_physdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_pkttype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
deleted file mode 120000
index 3551c0d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_pkttype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_pkttype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_pkttype.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_quota.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_quota.h
deleted file mode 120000
index fc9f8b0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_quota.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_quota.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_quota.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_quota.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_quota.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_quota.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_realm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_realm.h
deleted file mode 120000
index 7c0e5f6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_realm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_realm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_realm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_realm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_realm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_realm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_sctp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_sctp.h
deleted file mode 120000
index cede7c7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_sctp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_sctp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_sctp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_sctp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_sctp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_sctp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_state.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_state.h
deleted file mode 120000
index 3f2ee91..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_state.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_state.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_state.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_state.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_state.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_state.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_statistic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_statistic.h
deleted file mode 120000
index dc1fe25..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_statistic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_statistic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_statistic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_statistic.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_statistic.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_statistic.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_string.h
deleted file mode 120000
index c19bebe..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_string.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_string.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_string.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
deleted file mode 120000
index 90cf9d5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_tcpmss.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_tcpmss.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_tcpmss.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
deleted file mode 120000
index 4e3f6b5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_tcpudp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_tcpudp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_tcpudp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp.h
deleted file mode 120000
index e6172ef..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_arp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_arp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_arp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
deleted file mode 120000
index b31b8c2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_arp/arp_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_arp/arp_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_arp/arp_tables.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_bridge.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_bridge.h
deleted file mode 120000
index f582040..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_bridge.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_bridge.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_bridge.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_bridge.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_bridge.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_bridge.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4.h
deleted file mode 120000
index 1daca65..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_ipv4.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
deleted file mode 120000
index 841b2e9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_conntrack.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_conntrack.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_conntrack.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
deleted file mode 120000
index 109ccef..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
deleted file mode 120000
index 9b17b22..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_nat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_nat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_nat.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
deleted file mode 120000
index fe78e7f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_nat_rule.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_nat_rule.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_nat_rule.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
deleted file mode 120000
index 3ea52ca..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_queue.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_queue.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_queue.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
deleted file mode 120000
index 0f8460d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_tables.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
deleted file mode 120000
index f908438..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
deleted file mode 120000
index 29058d2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_DSCP.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_DSCP.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_DSCP.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
deleted file mode 120000
index fc1128c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_ECN.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_ECN.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_ECN.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
deleted file mode 120000
index b5dbb55..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_LOG.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_LOG.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_LOG.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
deleted file mode 120000
index 3686206..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
deleted file mode 120000
index b3f1023..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_REJECT.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_REJECT.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_REJECT.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
deleted file mode 120000
index fd24f6a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_TCPMSS.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_TCPMSS.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_TCPMSS.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
deleted file mode 120000
index bb1a243..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_TOS.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_TOS.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_TOS.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
deleted file mode 120000
index 0ad1303..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_TTL.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_TTL.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_TTL.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
deleted file mode 120000
index 9cc45e5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_ULOG.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_ULOG.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_ULOG.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
deleted file mode 120000
index 3b37d0b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_addrtype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_addrtype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_addrtype.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
deleted file mode 120000
index 4b846fa..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_ah.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_ah.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_ah.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
deleted file mode 120000
index 96a07ea..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_comment.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_comment.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_comment.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
deleted file mode 120000
index 76120e8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_connbytes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_connbytes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_connbytes.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
deleted file mode 120000
index 9be071c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_dccp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_dccp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_dccp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
deleted file mode 120000
index 75879c3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_dscp_.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_dscp_.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_dscp_.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
deleted file mode 120000
index 9830294..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_esp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_esp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_esp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
deleted file mode 120000
index 67cbcc1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_hashlimit.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_hashlimit.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_hashlimit.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
deleted file mode 120000
index b7039dc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_helper.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_helper.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_helper.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
deleted file mode 120000
index d225d28..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_iprange.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_iprange.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_iprange.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
deleted file mode 120000
index 268a39e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_length.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_length.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_length.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
deleted file mode 120000
index f3cae5b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_mac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_mac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_mac.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
deleted file mode 120000
index b082109..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_owner.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_owner.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_owner.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
deleted file mode 120000
index 47258d4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_physdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_physdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_physdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
deleted file mode 120000
index dc938c1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_pkttype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_pkttype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_pkttype.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
deleted file mode 120000
index c07b56d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_realm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_realm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_realm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
deleted file mode 120000
index 531cb56..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_recent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_recent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_recent.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
deleted file mode 120000
index 341f347..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_sctp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_sctp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_sctp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
deleted file mode 120000
index da5187b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_state.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_state.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_state.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
deleted file mode 120000
index 12d23d4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_string.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
deleted file mode 120000
index 35348cc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_tos_.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_tos_.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_tos_.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6.h
deleted file mode 120000
index 0a37d5b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_ipv6.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
deleted file mode 120000
index dbabff2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6_tables.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
deleted file mode 120000
index c7b27c9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_LOG.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_LOG.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_LOG.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
deleted file mode 120000
index fcee66d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_REJECT.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_REJECT.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_REJECT.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
deleted file mode 120000
index 79151b0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_ah.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_ah.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_ah.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
deleted file mode 120000
index 4f116b7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_esp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_esp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_esp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
deleted file mode 120000
index 7375205..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_frag.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_frag.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_frag.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
deleted file mode 120000
index d3bc0ae..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_ipv6header.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_ipv6header.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_ipv6header.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
deleted file mode 120000
index cc583e5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_length.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_length.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_length.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
deleted file mode 120000
index edb21e3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_mac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_mac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_mac.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
deleted file mode 120000
index 7dd0aec..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_opts.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_opts.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_opts.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
deleted file mode 120000
index cd6bbca..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_owner.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_owner.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_owner.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
deleted file mode 120000
index 72d42c8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_physdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_physdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_physdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
deleted file mode 120000
index 0ade394..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_rt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_rt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_rt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netlink.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netlink.h
deleted file mode 120000
index 91610b8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netlink.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netlink.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netlink.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netlink.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netlink.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netlink.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs.h
deleted file mode 120000
index a055478..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs2.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs2.h
deleted file mode 120000
index c3a9509..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs2.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs2.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfs2.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs2.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfs2.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs2.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs3.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs3.h
deleted file mode 120000
index 4cd8d7a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs3.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs3.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfs3.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs3.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfs3.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs3.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs4.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs4.h
deleted file mode 120000
index 4649859..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs4.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs4.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfs4.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs4.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfs4.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs4.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs_xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs_xdr.h
deleted file mode 120000
index 2f6de25..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs_xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs_xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfs_xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs_xdr.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfs_xdr.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs_xdr.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsacl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsacl.h
deleted file mode 120000
index c44aa13..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsacl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfsacl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsacl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsacl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsacl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsacl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/auth.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/auth.h
deleted file mode 120000
index f68aa51..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/auth.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/auth.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/auth.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/auth.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/auth.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/auth.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/const.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/const.h
deleted file mode 120000
index fe65cf4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/const.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/const.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/const.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/const.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/const.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/const.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/debug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/debug.h
deleted file mode 120000
index 789ca95..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/debug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/debug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/debug.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/debug.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/debug.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/export.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/export.h
deleted file mode 120000
index 811763b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/export.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/export.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/export.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/export.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/export.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/export.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/interface.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/interface.h
deleted file mode 120000
index b19512d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/interface.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/interface.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/interface.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/interface.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/interface.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/interface.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/nfsfh.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/nfsfh.h
deleted file mode 120000
index 9f3e60d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/nfsfh.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/nfsfh.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/nfsfh.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/nfsfh.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/nfsfh.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/nfsfh.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/stats.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/stats.h
deleted file mode 120000
index 744e2fb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/stats.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/stats.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/stats.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/stats.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/stats.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/stats.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/xdr.h
deleted file mode 120000
index 46d7928..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/xdr.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/xdr.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/xdr.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/node.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/node.h
deleted file mode 120000
index e67c59f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/node.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/node.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/node.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/node.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/node.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/node.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nodemask.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nodemask.h
deleted file mode 120000
index 356c720..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nodemask.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nodemask.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nodemask.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nodemask.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nodemask.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nodemask.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/notifier.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/notifier.h
deleted file mode 120000
index a0dfdcf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/notifier.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/notifier.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/notifier.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/notifier.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/notifier.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/notifier.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/numa.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/numa.h
deleted file mode 120000
index f0549f0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/numa.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/numa.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/numa.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/numa.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/numa.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/numa.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nvram.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nvram.h
deleted file mode 120000
index e2bce31..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nvram.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nvram.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nvram.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nvram.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nvram.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nvram.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/omap_csmi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/omap_csmi.h
deleted file mode 120000
index 0d2c516..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/omap_csmi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/omap_csmi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/omap_csmi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/omap_csmi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/omap_csmi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/omap_csmi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pagemap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pagemap.h
deleted file mode 120000
index 3545504..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pagemap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pagemap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pagemap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pagemap.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pagemap.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pagemap.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/param.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/param.h
deleted file mode 120000
index edd8f98..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/param.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/param.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/param.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/param.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/param.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/param.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/patchkey.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/patchkey.h
deleted file mode 120000
index 628a75c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/patchkey.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/patchkey.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/patchkey.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/patchkey.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/patchkey.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/patchkey.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci.h
deleted file mode 120000
index 22b0ec7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pci.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pci.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pci.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_ids.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_ids.h
deleted file mode 120000
index c3475fb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_ids.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pci_ids.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pci_ids.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_ids.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pci_ids.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_ids.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_regs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_regs.h
deleted file mode 120000
index 853c226..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_regs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pci_regs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pci_regs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_regs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pci_regs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_regs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu.h
deleted file mode 120000
index 93d6b27..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/percpu.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/percpu.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/percpu.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu_counter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu_counter.h
deleted file mode 120000
index 6c839d4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu_counter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/percpu_counter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/percpu_counter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu_counter.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/percpu_counter.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu_counter.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/personality.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/personality.h
deleted file mode 120000
index 0d6b659..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/personality.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/personality.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/personality.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/personality.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/personality.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/personality.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pfkeyv2.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pfkeyv2.h
deleted file mode 120000
index 321bbb6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pfkeyv2.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pfkeyv2.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pfkeyv2.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pfkeyv2.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pfkeyv2.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pfkeyv2.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_cls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_cls.h
deleted file mode 120000
index 58e8899..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_cls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pkt_cls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pkt_cls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_cls.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pkt_cls.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_cls.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_sched.h
deleted file mode 120000
index 77b5a47..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pkt_sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pkt_sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_sched.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pkt_sched.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_sched.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/platform_device.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/platform_device.h
deleted file mode 120000
index baa7b55..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/platform_device.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/platform_device.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/platform_device.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/platform_device.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/platform_device.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/platform_device.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/plist.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/plist.h
deleted file mode 120000
index 4d4e542..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/plist.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/plist.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/plist.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/plist.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/plist.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/plist.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pm.h
deleted file mode 120000
index 1a4339e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pnp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pnp.h
deleted file mode 120000
index d7e1bb9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pnp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pnp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pnp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pnp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pnp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pnp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/poll.h
deleted file mode 120000
index 23c4b3f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/poll.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/poll.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/poll.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_acl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_acl.h
deleted file mode 120000
index 29ae7cd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_acl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/posix_acl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/posix_acl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_acl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/posix_acl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_acl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_types.h
deleted file mode 120000
index bcbcf00..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/posix_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/posix_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/posix_types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppdev.h
deleted file mode 120000
index 3b386a6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ppdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ppdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ppdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppp_defs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppp_defs.h
deleted file mode 120000
index 309a3d0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppp_defs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ppp_defs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ppp_defs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppp_defs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ppp_defs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppp_defs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/prctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/prctl.h
deleted file mode 120000
index 8bbe96c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/prctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/prctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/prctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/prctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/prctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/prctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/preempt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/preempt.h
deleted file mode 120000
index 9b59fe3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/preempt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/preempt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/preempt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/preempt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/preempt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/preempt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/proc_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/proc_fs.h
deleted file mode 120000
index 6d310c4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/proc_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/proc_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/proc_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/proc_fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/proc_fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/proc_fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ptrace.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ptrace.h
deleted file mode 120000
index 2617a6c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ptrace.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ptrace.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ptrace.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ptrace.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ptrace.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ptrace.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qic117.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qic117.h
deleted file mode 120000
index 7223064..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qic117.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/qic117.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/qic117.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qic117.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/qic117.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/qic117.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qnxtypes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qnxtypes.h
deleted file mode 120000
index 5c767a3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qnxtypes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/qnxtypes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/qnxtypes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qnxtypes.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/qnxtypes.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/qnxtypes.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/quota.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/quota.h
deleted file mode 120000
index ed68365..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/quota.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/quota.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/quota.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/quota.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/quota.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/quota.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md.h
deleted file mode 120000
index e8599ef..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/raid/md.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/raid/md.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_k.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_k.h
deleted file mode 120000
index 20f8ca6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_k.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md_k.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/raid/md_k.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_k.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/raid/md_k.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_k.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_p.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_p.h
deleted file mode 120000
index f631a38..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_p.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md_p.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/raid/md_p.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_p.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/raid/md_p.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_p.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_u.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_u.h
deleted file mode 120000
index 931271c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_u.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md_u.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/raid/md_u.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_u.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/raid/md_u.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_u.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/xor.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/xor.h
deleted file mode 120000
index b02a69a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/xor.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/xor.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/raid/xor.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/xor.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/raid/xor.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/xor.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/random.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/random.h
deleted file mode 120000
index 0088784..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/random.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/random.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/random.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/random.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/random.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/random.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rbtree.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rbtree.h
deleted file mode 120000
index f606d94..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rbtree.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rbtree.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/rbtree.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rbtree.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/rbtree.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/rbtree.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rcupdate.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rcupdate.h
deleted file mode 120000
index e93235d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rcupdate.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rcupdate.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/rcupdate.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rcupdate.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/rcupdate.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/rcupdate.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/reboot.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/reboot.h
deleted file mode 120000
index c3b86f4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/reboot.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/reboot.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/reboot.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/reboot.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/reboot.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/reboot.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/relay.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/relay.h
deleted file mode 120000
index c354e19..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/relay.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/relay.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/relay.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/relay.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/relay.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/relay.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/resource.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/resource.h
deleted file mode 120000
index 80a9f86..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/resource.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/resource.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/resource.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/resource.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/resource.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/resource.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/route.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/route.h
deleted file mode 120000
index c81b220..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/route.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/route.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/route.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/route.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/route.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/route.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtc.h
deleted file mode 120000
index eaeecd3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rtc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/rtc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/rtc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtnetlink.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtnetlink.h
deleted file mode 120000
index 064a3d2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtnetlink.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rtnetlink.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/rtnetlink.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtnetlink.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/rtnetlink.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtnetlink.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rwsem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rwsem.h
deleted file mode 120000
index 68eab47..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rwsem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rwsem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/rwsem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rwsem.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/rwsem.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/rwsem.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sched.h
deleted file mode 120000
index e8ff88b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sched.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sched.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sched.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sem.h
deleted file mode 120000
index 5348418..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sem.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sem.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sem.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seq_file.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seq_file.h
deleted file mode 120000
index 2c25e6c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seq_file.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/seq_file.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/seq_file.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seq_file.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/seq_file.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/seq_file.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seqlock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seqlock.h
deleted file mode 120000
index 345108e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seqlock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/seqlock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/seqlock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seqlock.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/seqlock.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/seqlock.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_core.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_core.h
deleted file mode 120000
index be40c9a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_core.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/serial_core.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/serial_core.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_core.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/serial_core.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_core.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_reg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_reg.h
deleted file mode 120000
index 60bd137..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_reg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/serial_reg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/serial_reg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_reg.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/serial_reg.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_reg.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serio.h
deleted file mode 120000
index 4d3b062..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/serio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/serio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/serio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/serio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/shm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/shm.h
deleted file mode 120000
index 4cd2df0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/shm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/shm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/shm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/shm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/shm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/shm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/signal.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/signal.h
deleted file mode 120000
index 10e9b01..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/signal.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/signal.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/signal.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/signal.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/signal.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/signal.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/skbuff.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/skbuff.h
deleted file mode 120000
index 5ff4983..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/skbuff.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/skbuff.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/skbuff.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/skbuff.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/skbuff.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/skbuff.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/slab.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/slab.h
deleted file mode 120000
index 04f089d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/slab.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/slab.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/slab.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/slab.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/slab.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/slab.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smb.h
deleted file mode 120000
index 3f1cf22..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/smb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/smb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/smb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/smb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp.h
deleted file mode 120000
index bfa5942..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/smp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/smp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/smp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp_lock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp_lock.h
deleted file mode 120000
index 76d4cb0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp_lock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/smp_lock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/smp_lock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp_lock.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/smp_lock.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp_lock.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/socket.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/socket.h
deleted file mode 120000
index edc366f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/socket.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/socket.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/socket.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/socket.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/socket.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/socket.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sockios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sockios.h
deleted file mode 120000
index 793adfb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sockios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sockios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sockios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sockios.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sockios.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sockios.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/soundcard.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/soundcard.h
deleted file mode 120000
index ca37579..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/soundcard.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/soundcard.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/soundcard.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/soundcard.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/soundcard.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/soundcard.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock.h
deleted file mode 120000
index 305c46d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/spinlock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/spinlock.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_smp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_smp.h
deleted file mode 120000
index 45bfb4e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_smp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_api_smp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/spinlock_api_smp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_smp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/spinlock_api_smp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_smp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_up.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_up.h
deleted file mode 120000
index b54532e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_up.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_api_up.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/spinlock_api_up.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_up.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/spinlock_api_up.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_up.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types.h
deleted file mode 120000
index 39611b7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/spinlock_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/spinlock_types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types_up.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types_up.h
deleted file mode 120000
index d5384d7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types_up.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_types_up.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/spinlock_types_up.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types_up.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/spinlock_types_up.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types_up.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_up.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_up.h
deleted file mode 120000
index 46b3c0e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_up.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_up.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/spinlock_up.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_up.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/spinlock_up.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_up.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stacktrace.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stacktrace.h
deleted file mode 120000
index 4c18232..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stacktrace.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stacktrace.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/stacktrace.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stacktrace.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/stacktrace.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/stacktrace.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stat.h
deleted file mode 120000
index 842159b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/stat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stat.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/stat.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/stat.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/statfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/statfs.h
deleted file mode 120000
index 4ac3b01..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/statfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/statfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/statfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/statfs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/statfs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/statfs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stddef.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stddef.h
deleted file mode 120000
index 9b398f1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stddef.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stddef.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/stddef.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stddef.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/stddef.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/stddef.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/string.h
deleted file mode 120000
index 414748f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/string.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/string.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/string.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stringify.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stringify.h
deleted file mode 120000
index 44dd7ed..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stringify.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stringify.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/stringify.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stringify.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/stringify.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/stringify.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth.h
deleted file mode 120000
index 1fbe34f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/auth.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/auth.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/auth.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth_gss.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth_gss.h
deleted file mode 120000
index 7bc8ad1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth_gss.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/auth_gss.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/auth_gss.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth_gss.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/auth_gss.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth_gss.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/clnt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/clnt.h
deleted file mode 120000
index 7f11a93..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/clnt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/clnt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/clnt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/clnt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/clnt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/clnt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/debug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/debug.h
deleted file mode 120000
index c95a429..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/debug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/debug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/debug.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/debug.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/debug.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_api.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_api.h
deleted file mode 120000
index e10eba6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_api.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/gss_api.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/gss_api.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_api.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/gss_api.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_api.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_asn1.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
deleted file mode 120000
index e860f8e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/gss_asn1.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/gss_asn1.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/gss_asn1.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_err.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_err.h
deleted file mode 120000
index 72c7141..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_err.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/gss_err.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/gss_err.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_err.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/gss_err.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_err.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/msg_prot.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/msg_prot.h
deleted file mode 120000
index d9cb9ae..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/msg_prot.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/msg_prot.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/msg_prot.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/msg_prot.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/msg_prot.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/msg_prot.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/sched.h
deleted file mode 120000
index 84791a7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/sched.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/sched.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/sched.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/stats.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/stats.h
deleted file mode 120000
index b115bd5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/stats.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/stats.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/stats.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/stats.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/stats.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/stats.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svc.h
deleted file mode 120000
index 658a81e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/svc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/svc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/svc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svcauth.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svcauth.h
deleted file mode 120000
index 8c3e841..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svcauth.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/svcauth.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/svcauth.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svcauth.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/svcauth.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svcauth.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/timer.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/timer.h
deleted file mode 120000
index ce8709d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/timer.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/timer.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/timer.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/timer.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/timer.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/timer.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/types.h
deleted file mode 120000
index e7f7656..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xdr.h
deleted file mode 120000
index 163e618..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xdr.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/xdr.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xdr.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xprt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xprt.h
deleted file mode 120000
index 6d29148..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xprt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/xprt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/xprt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xprt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/xprt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xprt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/swap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/swap.h
deleted file mode 120000
index 47db73a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/swap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/swap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/swap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/swap.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/swap.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/swap.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysctl.h
deleted file mode 120000
index 1252a53..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sysctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sysctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sysctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysdev.h
deleted file mode 120000
index 6691343..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sysdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sysdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sysdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysfs.h
deleted file mode 120000
index 0cbaad8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sysfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sysfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysfs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sysfs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysfs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats.h
deleted file mode 120000
index 24a178e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/taskstats.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/taskstats.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/taskstats.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats_kern.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats_kern.h
deleted file mode 120000
index 20b2c64..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats_kern.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/taskstats_kern.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/taskstats_kern.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats_kern.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/taskstats_kern.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats_kern.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tcp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tcp.h
deleted file mode 120000
index 417237a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tcp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/tcp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/tcp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tcp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/tcp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/tcp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/telephony.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/telephony.h
deleted file mode 120000
index 44b4c18..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/telephony.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/telephony.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/telephony.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/telephony.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/telephony.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/telephony.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/termios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/termios.h
deleted file mode 120000
index 968db97..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/termios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/termios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/termios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/termios.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/termios.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/termios.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/textsearch.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/textsearch.h
deleted file mode 120000
index e033273..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/textsearch.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/textsearch.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/textsearch.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/textsearch.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/textsearch.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/textsearch.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/thread_info.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/thread_info.h
deleted file mode 120000
index 11a1011..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/thread_info.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/thread_info.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/thread_info.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/thread_info.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/thread_info.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/thread_info.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/threads.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/threads.h
deleted file mode 120000
index ef3237e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/threads.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/threads.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/threads.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/threads.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/threads.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/threads.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/time.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/time.h
deleted file mode 120000
index 2060843..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/time.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/time.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/time.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/time.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/time.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/time.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timer.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timer.h
deleted file mode 120000
index f81d907..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timer.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/timer.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/timer.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timer.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/timer.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/timer.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/times.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/times.h
deleted file mode 120000
index 8757201..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/times.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/times.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/times.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/times.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/times.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/times.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timex.h
deleted file mode 120000
index 49e520b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/timex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/timex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timex.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/timex.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/timex.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tiocl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tiocl.h
deleted file mode 120000
index ae6102b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tiocl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/tiocl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/tiocl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tiocl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/tiocl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/tiocl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/transport_class.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/transport_class.h
deleted file mode 120000
index 735b69b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/transport_class.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/transport_class.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/transport_class.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/transport_class.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/transport_class.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/transport_class.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tty.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tty.h
deleted file mode 120000
index 4e874bf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tty.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/tty.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/tty.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tty.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/tty.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/tty.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/types.h
deleted file mode 120000
index 76b2511..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/udp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/udp.h
deleted file mode 120000
index 14ee4b2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/udp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/udp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/udp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/udp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/udp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/udp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_i.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_i.h
deleted file mode 120000
index de767a7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_i.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ufs_fs_i.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ufs_fs_i.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_i.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ufs_fs_i.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_i.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_sb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_sb.h
deleted file mode 120000
index a78b9d3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_sb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ufs_fs_sb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ufs_fs_sb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_sb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ufs_fs_sb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_sb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/uio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/uio.h
deleted file mode 120000
index 95a105d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/uio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/uio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/uio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/uio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/uio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/uio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/un.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/un.h
deleted file mode 120000
index 6d51e94..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/un.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/un.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/un.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/un.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/un.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/un.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/unistd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/unistd.h
deleted file mode 120000
index 7ef4a0d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/unistd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/unistd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/unistd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/unistd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/unistd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/unistd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb.h
deleted file mode 120000
index 7da27d7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/usb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/usb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/usb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb_ch9.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb_ch9.h
deleted file mode 120000
index d8a2655..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb_ch9.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/usb_ch9.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/usb_ch9.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb_ch9.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/usb_ch9.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb_ch9.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usbdevice_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usbdevice_fs.h
deleted file mode 120000
index b4c8de8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usbdevice_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/usbdevice_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/usbdevice_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usbdevice_fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/usbdevice_fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/usbdevice_fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/user.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/user.h
deleted file mode 120000
index 2bb072e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/user.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/user.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/user.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/user.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/user.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/user.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utime.h
deleted file mode 120000
index c483c28..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/utime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/utime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utime.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/utime.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/utime.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utsname.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utsname.h
deleted file mode 120000
index 8b0a098..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utsname.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/utsname.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/utsname.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utsname.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/utsname.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/utsname.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/version.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/version.h
deleted file mode 120000
index cb2ac62..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/version.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/version.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/version.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/version.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/version.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/version.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vfs.h
deleted file mode 120000
index b815962..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/vfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vfs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/vfs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/vfs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev.h
deleted file mode 120000
index 33e8651..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/videodev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/videodev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/videodev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev2.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev2.h
deleted file mode 120000
index 9127b40..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev2.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/videodev2.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/videodev2.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev2.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/videodev2.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev2.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vmalloc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vmalloc.h
deleted file mode 120000
index 90410fc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vmalloc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vmalloc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/vmalloc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vmalloc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/vmalloc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/vmalloc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt.h
deleted file mode 120000
index 5f1333a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/vt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/vt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt_buffer.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt_buffer.h
deleted file mode 120000
index babe241..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt_buffer.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vt_buffer.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/vt_buffer.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt_buffer.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/vt_buffer.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt_buffer.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wait.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wait.h
deleted file mode 120000
index ee2730b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wait.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/wait.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/wait.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wait.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/wait.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/wait.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wanrouter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wanrouter.h
deleted file mode 120000
index 1d1b8f1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wanrouter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/wanrouter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/wanrouter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wanrouter.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/wanrouter.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/wanrouter.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wireless.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wireless.h
deleted file mode 120000
index 43983b5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wireless.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/wireless.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/wireless.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wireless.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/wireless.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/wireless.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/workqueue.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/workqueue.h
deleted file mode 120000
index 3ce0512..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/workqueue.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/workqueue.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/workqueue.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/workqueue.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/workqueue.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/workqueue.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/xattr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/xattr.h
deleted file mode 120000
index 8cf8b0b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/xattr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/xattr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/xattr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/xattr.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/xattr.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/xattr.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zconf.h
deleted file mode 120000
index 4dc29e6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/zconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/zconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zconf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/zconf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/zconf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zlib.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zlib.h
deleted file mode 120000
index 9d45319..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zlib.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/zlib.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/zlib.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zlib.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/zlib.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/zlib.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zorro_ids.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zorro_ids.h
deleted file mode 120000
index f2220c0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zorro_ids.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/zorro_ids.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/zorro_ids.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zorro_ids.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/zorro_ids.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/zorro_ids.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/locale.h b/ndk/build/platforms/android-4/arch-arm/usr/include/locale.h
deleted file mode 120000
index 26247fd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/locale.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/locale.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/locale.h b/ndk/build/platforms/android-4/arch-arm/usr/include/locale.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/locale.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/locale.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/malloc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/malloc.h
deleted file mode 120000
index 78a8006..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/malloc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/malloc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/malloc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/malloc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/malloc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/malloc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/math.h b/ndk/build/platforms/android-4/arch-arm/usr/include/math.h
deleted file mode 120000
index 0d4bdcd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/math.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/math.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/math.h b/ndk/build/platforms/android-4/arch-arm/usr/include/math.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/math.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/math.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/memory.h b/ndk/build/platforms/android-4/arch-arm/usr/include/memory.h
deleted file mode 120000
index 08375e2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/memory.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/memory.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/memory.h b/ndk/build/platforms/android-4/arch-arm/usr/include/memory.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/memory.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/memory.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/mntent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/mntent.h
deleted file mode 120000
index 43186c4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/mntent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/mntent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/mntent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/mntent.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/mntent.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/mntent.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-abi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-abi.h
deleted file mode 120000
index 19a9a51..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-abi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/mtd/mtd-abi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/mtd/mtd-abi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-abi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/mtd/mtd-abi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-abi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-user.h b/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-user.h
deleted file mode 120000
index e22b96b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-user.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/mtd/mtd-user.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/mtd/mtd-user.h b/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-user.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/mtd/mtd-user.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-user.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/ethertypes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/ethertypes.h
deleted file mode 120000
index 621864d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/ethertypes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/ethertypes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/ethertypes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/ethertypes.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/ethertypes.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/ethertypes.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if.h
deleted file mode 120000
index c83fdb9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_arp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_arp.h
deleted file mode 120000
index e8e84bb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_arp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_arp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if_arp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_arp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if_arp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if_arp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_dl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_dl.h
deleted file mode 120000
index 1a27df4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_dl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_dl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if_dl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_dl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if_dl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if_dl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ether.h
deleted file mode 120000
index 591c1db..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if_ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ether.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if_ether.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ether.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ieee1394.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ieee1394.h
deleted file mode 120000
index f0b13ce..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ieee1394.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_ieee1394.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if_ieee1394.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ieee1394.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if_ieee1394.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ieee1394.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_packet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_packet.h
deleted file mode 120000
index 4c5bd8d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_packet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_packet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if_packet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_packet.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if_packet.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if_packet.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_types.h
deleted file mode 120000
index 410430f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if_types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if_types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/route.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/route.h
deleted file mode 120000
index ea03206..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/route.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/route.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/route.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/route.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/route.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/route.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netdb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netdb.h
deleted file mode 120000
index 67f7a2f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netdb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/netdb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netdb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netdb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netdb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netdb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ether.h
deleted file mode 120000
index e331c47..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ether.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/ether.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ether.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/if_ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/if_ether.h
deleted file mode 120000
index 5354bb5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/if_ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/if_ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/if_ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/if_ether.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/if_ether.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/if_ether.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in.h
deleted file mode 120000
index 8439fe5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/in.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/in.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/in.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in6.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in6.h
deleted file mode 120000
index fa5937f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in6.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/in6.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/in6.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in6.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/in6.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in6.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in_systm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in_systm.h
deleted file mode 120000
index ea70a33..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in_systm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/in_systm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/in_systm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in_systm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/in_systm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in_systm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip.h
deleted file mode 120000
index 3eb2097..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/ip.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/ip.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/ip.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip_icmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip_icmp.h
deleted file mode 120000
index 2c9024f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip_icmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/ip_icmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/ip_icmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip_icmp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/ip_icmp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip_icmp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/tcp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/tcp.h
deleted file mode 120000
index 6b0d829..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/tcp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/tcp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/tcp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/tcp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/tcp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/tcp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/udp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/udp.h
deleted file mode 120000
index d5e0f6b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/udp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/udp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/udp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/udp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/udp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/udp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netpacket/packet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netpacket/packet.h
deleted file mode 120000
index 7473ba4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netpacket/packet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netpacket/packet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netpacket/packet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netpacket/packet.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netpacket/packet.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netpacket/packet.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/new b/ndk/build/platforms/android-4/arch-arm/usr/include/new
deleted file mode 120000
index b3e4225..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/new
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/new
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/new b/ndk/build/platforms/android-4/arch-arm/usr/include/new
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/new
rename to ndk/build/platforms/android-4/arch-arm/usr/include/new
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/nsswitch.h b/ndk/build/platforms/android-4/arch-arm/usr/include/nsswitch.h
deleted file mode 120000
index 361ce34..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/nsswitch.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/nsswitch.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/nsswitch.h b/ndk/build/platforms/android-4/arch-arm/usr/include/nsswitch.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/nsswitch.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/nsswitch.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/pathconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/pathconf.h
deleted file mode 120000
index f1c45ca..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/pathconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/pathconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/pathconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/pathconf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/pathconf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/pathconf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/paths.h b/ndk/build/platforms/android-4/arch-arm/usr/include/paths.h
deleted file mode 120000
index 04b00c0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/paths.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/paths.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/paths.h b/ndk/build/platforms/android-4/arch-arm/usr/include/paths.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/paths.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/paths.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/poll.h
deleted file mode 120000
index e260aad..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/poll.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/poll.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/poll.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/pthread.h b/ndk/build/platforms/android-4/arch-arm/usr/include/pthread.h
deleted file mode 120000
index e7240fe..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/pthread.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/pthread.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/pthread.h b/ndk/build/platforms/android-4/arch-arm/usr/include/pthread.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/pthread.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/pthread.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/pwd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/pwd.h
deleted file mode 120000
index deefc65..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/pwd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/pwd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/pwd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/pwd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/pwd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/pwd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/resolv.h b/ndk/build/platforms/android-4/arch-arm/usr/include/resolv.h
deleted file mode 120000
index 645cec6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/resolv.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/resolv.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/resolv.h b/ndk/build/platforms/android-4/arch-arm/usr/include/resolv.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/resolv.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/resolv.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sched.h
deleted file mode 120000
index 7eb75bc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sched.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sched.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sched.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/semaphore.h b/ndk/build/platforms/android-4/arch-arm/usr/include/semaphore.h
deleted file mode 120000
index 5981819..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/semaphore.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/semaphore.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/semaphore.h b/ndk/build/platforms/android-4/arch-arm/usr/include/semaphore.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/semaphore.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/semaphore.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/setjmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/setjmp.h
deleted file mode 120000
index 927b88e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/setjmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/setjmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/setjmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/setjmp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/setjmp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/setjmp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sgtty.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sgtty.h
deleted file mode 120000
index fcfac52..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sgtty.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/sgtty.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sgtty.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sgtty.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sgtty.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sgtty.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sha1.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sha1.h
deleted file mode 120000
index f4aadd2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sha1.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/sha1.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sha1.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sha1.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sha1.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sha1.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/signal.h b/ndk/build/platforms/android-4/arch-arm/usr/include/signal.h
deleted file mode 120000
index 83e2e8e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/signal.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/signal.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/signal.h b/ndk/build/platforms/android-4/arch-arm/usr/include/signal.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/signal.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/signal.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/stdint.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stdint.h
deleted file mode 120000
index 8b0dfbf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/stdint.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stdint.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/stdint.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stdint.h
new file mode 100644
index 0000000..237baa2
--- /dev/null
+++ b/ndk/build/platforms/android-4/arch-arm/usr/include/stdint.h
@@ -0,0 +1,266 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _STDINT_H
+#define _STDINT_H
+
+#include <stddef.h>
+#include <sys/_types.h>
+
+
+
+#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS)
+# define __STDINT_LIMITS
+#endif
+
+#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS)
+# define __STDINT_MACROS
+#endif
+
+/* the definitions of STDINT_LIMITS depend on those of STDINT_MACROS */
+#if defined __STDINT_LIMITS && !defined __STDINT_MACROS
+# define __STDINT_MACROS
+#endif
+
+#if !defined __STRICT_ANSI__ || __STDC_VERSION__ >= 199901L
+# define __STDC_INT64__
+#endif
+
+typedef __int8_t int8_t;
+typedef __uint8_t uint8_t;
+typedef __int16_t int16_t;
+typedef __uint16_t uint16_t;
+typedef __int32_t int32_t;
+typedef __uint32_t uint32_t;
+#if defined(__STDC_INT64__)
+typedef __int64_t int64_t;
+typedef __uint64_t uint64_t;
+#endif
+
+/*
+ * int8_t & uint8_t
+ */
+
+typedef int8_t int_least8_t;
+typedef int8_t int_fast8_t;
+
+typedef uint8_t uint_least8_t;
+typedef uint8_t uint_fast8_t;
+
+#ifdef __STDINT_LIMITS
+# define INT8_MIN (-128)
+# define INT8_MAX (127)
+# define INT_LEAST8_MIN INT8_MIN
+# define INT_LEAST8_MAX INT8_MAX
+# define INT_FAST8_MIN INT8_MIN
+# define INT_FAST8_MAX INT8_MAX
+
+# define UINT8_MAX (255U)
+# define UINT_LEAST8_MAX UINT8_MAX
+# define UINT_FAST8_MAX UINT8_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+# define INT8_C(c) c
+# define INT_LEAST8_C(c) INT8_C(c)
+# define INT_FAST8_C(c) INT8_C(c)
+
+# define UINT8_C(c) c ## U
+# define UINT_LEAST8_C(c) UINT8_C(c)
+# define UINT_FAST8_C(c) UINT8_C(c)
+#endif
+
+/*
+ * int16_t & uint16_t
+ */
+
+
+typedef int16_t int_least16_t;
+typedef int32_t int_fast16_t;
+
+typedef uint16_t uint_least16_t;
+typedef uint32_t uint_fast16_t;
+
+#ifdef __STDINT_LIMITS
+# define INT16_MIN (-32768)
+# define INT16_MAX (32767)
+# define INT_LEAST16_MIN INT16_MIN
+# define INT_LEAST16_MAX INT16_MAX
+# define INT_FAST16_MIN INT32_MIN
+# define INT_FAST16_MAX INT32_MAX
+
+# define UINT16_MAX (65535U)
+# define UINT_LEAST16_MAX UINT16_MAX
+# define UINT_FAST16_MAX UINT32_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+# define INT16_C(c) c
+# define INT_LEAST16_C(c) INT16_C(c)
+# define INT_FAST16_C(c) INT32_C(c)
+
+# define UINT16_C(c) c ## U
+# define UINT_LEAST16_C(c) UINT16_C(c)
+# define UINT_FAST16_C(c) UINT32_C(c)
+#endif
+
+/*
+ * int32_t & uint32_t
+ */
+
+typedef int32_t int_least32_t;
+typedef int32_t int_fast32_t;
+
+typedef uint32_t uint_least32_t;
+typedef uint32_t uint_fast32_t;
+
+#ifdef __STDINT_LIMITS
+# define INT32_MIN (-2147483647-1)
+# define INT32_MAX (2147483647)
+# define INT_LEAST32_MIN INT32_MIN
+# define INT_LEAST32_MAX INT32_MAX
+# define INT_FAST32_MIN INT32_MIN
+# define INT_FAST32_MAX INT32_MAX
+
+# define UINT32_MAX (4294967295U)
+# define UINT_LEAST32_MAX UINT32_MAX
+# define UINT_FAST32_MAX UINT32_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+# define INT32_C(c) c
+# define INT_LEAST32_C(c) INT32_C(c)
+# define INT_FAST32_C(c) INT32_C(c)
+
+# define UINT32_C(c) c ## U
+# define UINT_LEAST32_C(c) UINT32_C(c)
+# define UINT_FAST32_C(c) UINT32_C(c)
+#endif
+
+#if defined(__STDC_INT64__)
+/*
+ * int64_t
+ */
+typedef int64_t int_least64_t;
+typedef int64_t int_fast64_t;
+
+typedef uint64_t uint_least64_t;
+typedef uint64_t uint_fast64_t;
+
+
+#ifdef __STDINT_LIMITS
+# define INT64_MIN (__INT64_C(-9223372036854775807)-1)
+# define INT64_MAX (__INT64_C(9223372036854775807))
+# define INT_LEAST64_MIN INT64_MIN
+# define INT_LEAST64_MAX INT64_MAX
+# define INT_FAST64_MIN INT64_MIN
+# define INT_FAST64_MAX INT64_MAX
+# define UINT64_MAX (__UINT64_C(18446744073709551615))
+
+# define UINT_LEAST64_MAX UINT64_MAX
+# define UINT_FAST64_MAX UINT64_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+# define __INT64_C(c) c ## LL
+# define INT64_C(c) __INT64_C(c)
+# define INT_LEAST64_C(c) INT64_C(c)
+# define INT_FAST64_C(c) INT64_C(c)
+
+# define __UINT64_C(c) c ## ULL
+# define UINT64_C(c) __UINT64_C(c)
+# define UINT_LEAST64_C(c) UINT64_C(c)
+# define UINT_FAST64_C(c) UINT64_C(c)
+#endif
+
+
+# define __PRI64_RANK "ll"
+# define __PRIFAST_RANK ""
+# define __PRIPTR_RANK ""
+
+#endif /* __STDC_INT64__ */
+
+/*
+ * intptr_t & uintptr_t
+ */
+
+typedef int intptr_t;
+typedef unsigned int uintptr_t;
+
+# define INTPTR_MIN INT32_MIN
+# define INTPTR_MAX INT32_MAX
+# define UINTPTR_MAX UINT32_MAX
+# define INTPTR_C(c) INT32_C(c)
+# define UINTPTR_C(c) UINT32_C(c)
+# define PTRDIFF_C(c) INT32_C(c)
+# define PTRDIFF_MIN INT32_MIN
+# define PTRDIFF_MAX INT32_MAX
+
+
+/*
+ * intmax_t & uintmax_t
+ */
+
+#if defined(__STDC_INT64__)
+
+typedef uint64_t uintmax_t;
+typedef int64_t intmax_t;
+
+#define INTMAX_MIN INT64_MIN
+#define INTMAX_MAX INT64_MAX
+#define UINTMAX_MAX UINT64_MAX
+
+#define INTMAX_C(c) INT64_C(c)
+#define UINTMAX_C(c) UINT64_C(c)
+
+#else /* !__STDC_INT64__ */
+
+typedef uint32_t uintmax_t;
+typedef int32_t intmax_t;
+
+#define INTMAX_MIN INT32_MIN
+#define INTMAX_MAX INT32_MAX
+#define UINTMAX_MAX UINT32_MAX
+
+#define INTMAX_C(c) INT32_C(c)
+#define UINTMAX_C(c) UINT32_C(c)
+
+#endif /* !__STDC_INT64__ */
+
+
+/* size_t is defined by the GCC-specific <stddef.h> */
+#ifndef _SSIZE_T_DEFINED_
+#define _SSIZE_T_DEFINED_
+typedef long int ssize_t;
+#endif
+
+#define _BITSIZE 32
+
+/* Keep the kernel from trying to define these types... */
+#define __BIT_TYPES_DEFINED__
+
+#endif /* _STDINT_H */
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/stdio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stdio.h
deleted file mode 120000
index 41d7d04..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/stdio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stdio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/stdio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stdio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/stdio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/stdio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/stdlib.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stdlib.h
deleted file mode 120000
index de97694..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/stdlib.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stdlib.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/stdlib.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stdlib.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/stdlib.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/stdlib.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/stl_pair.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stl_pair.h
deleted file mode 120000
index bfeaf5b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/stl_pair.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stl_pair.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/stl_pair.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stl_pair.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/stl_pair.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/stl_pair.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/string.h
deleted file mode 120000
index ee1c46a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/string.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/string.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/string.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/strings.h b/ndk/build/platforms/android-4/arch-arm/usr/include/strings.h
deleted file mode 120000
index e3c356d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/strings.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/strings.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/strings.h b/ndk/build/platforms/android-4/arch-arm/usr/include/strings.h
new file mode 100644
index 0000000..fee7dc4
--- /dev/null
+++ b/ndk/build/platforms/android-4/arch-arm/usr/include/strings.h
@@ -0,0 +1,56 @@
+/* $NetBSD: strings.h,v 1.10 2005/02/03 04:39:32 perry Exp $ */
+
+/*-
+ * Copyright (c) 1998 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Klaus Klein.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the NetBSD
+ * Foundation, Inc. and its contributors.
+ * 4. Neither the name of The NetBSD Foundation nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _STRINGS_H_
+#define _STRINGS_H_
+
+#include <sys/types.h>
+#include <sys/cdefs.h>
+
+__BEGIN_DECLS
+int bcmp(const void *, const void *, size_t);
+void bcopy(const void *, void *, size_t);
+void bzero(void *, size_t);
+int ffs(int);
+char *index(const char *, int);
+char *rindex(const char *, int);
+int strcasecmp(const char *, const char *);
+int strncasecmp(const char *, const char *, size_t);
+__END_DECLS
+
+#endif /* !defined(_STRINGS_H_) */
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_errdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_errdefs.h
deleted file mode 120000
index b2a299e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_errdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_errdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/_errdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_errdefs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/_errdefs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/_errdefs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_sigdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_sigdefs.h
deleted file mode 120000
index ea48d37..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_sigdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_sigdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/_sigdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_sigdefs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/_sigdefs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/_sigdefs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_system_properties.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_system_properties.h
deleted file mode 120000
index 6054cc4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_system_properties.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_system_properties.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/_system_properties.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_system_properties.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/_system_properties.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/_system_properties.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_types.h
deleted file mode 120000
index 936b4d5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/_types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/_types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/atomics.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/atomics.h
deleted file mode 120000
index 0304794..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/atomics.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/atomics.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/atomics.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/atomics.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/atomics.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/atomics.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs.h
deleted file mode 120000
index 36eede7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/cdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/cdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/cdefs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs_elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs_elf.h
deleted file mode 120000
index fa852bf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs_elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/cdefs_elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/cdefs_elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs_elf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/cdefs_elf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs_elf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/dirent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/dirent.h
deleted file mode 120000
index cac02ee..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/dirent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/dirent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/dirent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/dirent.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/dirent.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/dirent.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/endian.h
deleted file mode 120000
index 25109db..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/endian.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/endian.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/endian.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/epoll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/epoll.h
deleted file mode 120000
index bf93fc6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/epoll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/epoll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/epoll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/epoll.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/epoll.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/epoll.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/errno.h
deleted file mode 120000
index 199ad78..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/errno.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/errno.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/errno.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/exec_elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/exec_elf.h
deleted file mode 120000
index 24e01e6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/exec_elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/exec_elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/exec_elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/exec_elf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/exec_elf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/exec_elf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/file.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/file.h
deleted file mode 120000
index 99ab5d3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/file.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/file.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/file.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/file.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/file.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/file.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/fsuid.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/fsuid.h
deleted file mode 120000
index f5f9974..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/fsuid.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/fsuid.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/fsuid.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/fsuid.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/fsuid.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/fsuid.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/inotify.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/inotify.h
deleted file mode 120000
index a050653..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/inotify.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/inotify.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/inotify.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/inotify.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/inotify.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/inotify.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl.h
deleted file mode 120000
index e228a66..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/ioctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl_compat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl_compat.h
deleted file mode 120000
index dd004de..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl_compat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ioctl_compat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/ioctl_compat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl_compat.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/ioctl_compat.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl_compat.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ipc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ipc.h
deleted file mode 120000
index 5d275f2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ipc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ipc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/ipc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ipc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/ipc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/ipc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/klog.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/klog.h
deleted file mode 120000
index 4cad4c9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/klog.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/klog.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/klog.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/klog.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/klog.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/klog.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/limits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/limits.h
deleted file mode 120000
index 4f50214..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/limits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/limits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/limits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/limits.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/limits.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/limits.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-syscalls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-syscalls.h
deleted file mode 120000
index 754d7c49..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-syscalls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/linux-syscalls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/linux-syscalls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-syscalls.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/linux-syscalls.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-syscalls.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-unistd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-unistd.h
deleted file mode 120000
index 9496fde..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-unistd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/linux-unistd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/linux-unistd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-unistd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/linux-unistd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-unistd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mman.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mman.h
deleted file mode 120000
index bd6a6b8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mman.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/mman.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/mman.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mman.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/mman.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/mman.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mount.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mount.h
deleted file mode 120000
index 0b0a916..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mount.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/mount.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/mount.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mount.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/mount.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/mount.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/param.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/param.h
deleted file mode 120000
index 16e5bcc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/param.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/param.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/param.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/param.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/param.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/param.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/poll.h
deleted file mode 120000
index a98ab69..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/poll.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/poll.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/poll.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/prctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/prctl.h
deleted file mode 120000
index 950d2fb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/prctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/prctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/prctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/prctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/prctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/prctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ptrace.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ptrace.h
deleted file mode 120000
index 3b2714f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ptrace.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ptrace.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/ptrace.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ptrace.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/ptrace.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/ptrace.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/reboot.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/reboot.h
deleted file mode 120000
index 8295ffc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/reboot.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/reboot.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/reboot.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/reboot.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/reboot.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/reboot.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/resource.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/resource.h
deleted file mode 120000
index 72a813f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/resource.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/resource.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/resource.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/resource.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/resource.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/resource.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/select.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/select.h
deleted file mode 120000
index 42f2037..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/select.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/select.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/select.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/select.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/select.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/select.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sendfile.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sendfile.h
deleted file mode 120000
index ac4d8a0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sendfile.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sendfile.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/sendfile.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sendfile.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/sendfile.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/sendfile.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socket.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socket.h
deleted file mode 120000
index 36a0331..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socket.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/socket.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/socket.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socket.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/socket.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/socket.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socketcalls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socketcalls.h
deleted file mode 120000
index 5e94809..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socketcalls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/socketcalls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/socketcalls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socketcalls.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/socketcalls.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/socketcalls.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/stat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/stat.h
deleted file mode 120000
index fa00c54..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/stat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/stat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/stat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/stat.h
new file mode 100644
index 0000000..091ee6d
--- /dev/null
+++ b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/stat.h
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _SYS_STAT_H_
+#define _SYS_STAT_H_
+
+#include <sys/cdefs.h>
+#include <sys/types.h>
+#include <sys/time.h>
+#include <linux/stat.h>
+
+#include <endian.h>
+
+__BEGIN_DECLS
+
+/* really matches stat64 in the kernel, hence the padding
+ * Note: The kernel zero's the padded region because glibc might read them
+ * in the hope that the kernel has stretched to using larger sizes.
+ */
+struct stat {
+ unsigned long long st_dev;
+ unsigned char __pad0[4];
+
+ unsigned long __st_ino;
+ unsigned int st_mode;
+ unsigned int st_nlink;
+
+ unsigned long st_uid;
+ unsigned long st_gid;
+
+ unsigned long long st_rdev;
+ unsigned char __pad3[4];
+
+ long long st_size;
+ unsigned long st_blksize;
+ unsigned long long st_blocks;
+
+ unsigned long st_atime;
+ unsigned long st_atime_nsec;
+
+ unsigned long st_mtime;
+ unsigned long st_mtime_nsec;
+
+ unsigned long st_ctime;
+ unsigned long st_ctime_nsec;
+
+ unsigned long long st_ino;
+};
+
+/* For compatibility with GLibc, we provide macro aliases
+ * for the non-Posix nano-seconds accessors.
+ */
+#define st_atimensec st_atime_nsec
+#define st_mtimensec st_mtime_nsec
+#define st_ctimensec st_ctime_nsec
+
+extern int chmod(const char *, mode_t);
+extern int fchmod(int, mode_t);
+extern int mkdir(const char *, mode_t);
+
+extern int stat(const char *, struct stat *);
+extern int fstat(int, struct stat *);
+extern int lstat(const char *, struct stat *);
+extern int mknod(const char *, mode_t, dev_t);
+extern mode_t umask(mode_t);
+
+#define stat64 stat
+#define fstat64 fstat
+#define lstat64 lstat
+
+static __inline__ int mkfifo(const char *__p, mode_t __m)
+{
+ return mknod(__p, (__m & ~S_IFMT) | S_IFIFO, (dev_t)0);
+}
+
+extern int fstatat(int dirfd, const char *path, struct stat *buf, int flags);
+extern int mkdirat(int dirfd, const char *pathname, mode_t mode);
+extern int fchownat(int dirfd, const char *path, uid_t owner, gid_t group, int flags);
+extern int fchmodat(int dirfd, const char *path, mode_t mode, int flags);
+extern int renameat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath);
+
+__END_DECLS
+
+#endif /* _SYS_STAT_H_ */
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/statfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/statfs.h
deleted file mode 120000
index d53806d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/statfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/statfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/statfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/statfs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/statfs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/statfs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syscall.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syscall.h
deleted file mode 120000
index 4225c35..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syscall.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/syscall.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/syscall.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syscall.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/syscall.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/syscall.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysconf.h
deleted file mode 120000
index ed9cf1f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sysconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/sysconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysconf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/sysconf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysconf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysinfo.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysinfo.h
deleted file mode 120000
index 1693d79..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysinfo.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sysinfo.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/sysinfo.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysinfo.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/sysinfo.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysinfo.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syslimits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syslimits.h
deleted file mode 120000
index 17efa78..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syslimits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/syslimits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/syslimits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syslimits.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/syslimits.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/syslimits.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysmacros.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysmacros.h
deleted file mode 120000
index fa13eca..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysmacros.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sysmacros.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/sysmacros.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysmacros.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/sysmacros.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysmacros.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/system_properties.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/system_properties.h
deleted file mode 120000
index 286ba9d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/system_properties.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/system_properties.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/system_properties.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/system_properties.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/system_properties.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/system_properties.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/time.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/time.h
deleted file mode 120000
index b376430..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/time.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/time.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/time.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/time.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/time.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/time.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/timeb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/timeb.h
deleted file mode 120000
index fef113e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/timeb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/timeb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/timeb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/timeb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/timeb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/timeb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/times.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/times.h
deleted file mode 120000
index 53c3a1a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/times.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/times.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/times.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/times.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/times.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/times.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttychars.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttychars.h
deleted file mode 120000
index 09c3352..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttychars.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ttychars.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/ttychars.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttychars.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/ttychars.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttychars.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttydev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttydev.h
deleted file mode 120000
index 4735daa..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttydev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ttydev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/ttydev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttydev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/ttydev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttydev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/types.h
deleted file mode 120000
index 8829c6b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/uio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/uio.h
deleted file mode 120000
index a111200..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/uio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/uio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/uio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/uio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/uio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/uio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/un.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/un.h
deleted file mode 120000
index 20d7c68..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/un.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/un.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/un.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/un.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/un.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/un.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utime.h
deleted file mode 120000
index 8494247..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/utime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/utime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utime.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/utime.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/utime.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utsname.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utsname.h
deleted file mode 120000
index cf985f0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utsname.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/utsname.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/utsname.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utsname.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/utsname.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/utsname.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vfs.h
deleted file mode 120000
index c4873c3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/vfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/vfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vfs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/vfs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/vfs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vt.h
deleted file mode 120000
index 55b3ed4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/vt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/vt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/vt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/vt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/wait.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/wait.h
deleted file mode 120000
index 9f27986..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/wait.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/wait.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/wait.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/wait.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/wait.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/wait.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/syslog.h b/ndk/build/platforms/android-4/arch-arm/usr/include/syslog.h
deleted file mode 120000
index 609c4e1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/syslog.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/syslog.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/syslog.h b/ndk/build/platforms/android-4/arch-arm/usr/include/syslog.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/syslog.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/syslog.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/termios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/termios.h
deleted file mode 120000
index 53740f5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/termios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/termios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/termios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/termios.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/termios.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/termios.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/thread_db.h b/ndk/build/platforms/android-4/arch-arm/usr/include/thread_db.h
deleted file mode 120000
index e6b5ced..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/thread_db.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/thread_db.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/thread_db.h b/ndk/build/platforms/android-4/arch-arm/usr/include/thread_db.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/thread_db.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/thread_db.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/time.h b/ndk/build/platforms/android-4/arch-arm/usr/include/time.h
deleted file mode 120000
index 4ae3e06..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/time.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/time.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/time.h b/ndk/build/platforms/android-4/arch-arm/usr/include/time.h
new file mode 100644
index 0000000..6163c6d
--- /dev/null
+++ b/ndk/build/platforms/android-4/arch-arm/usr/include/time.h
@@ -0,0 +1,115 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _TIME_H_
+#define _TIME_H_
+
+#include <sys/cdefs.h>
+#include <sys/time.h>
+
+#define __ARCH_SI_UID_T __kernel_uid32_t
+#include <asm/siginfo.h>
+#undef __ARCH_SI_UID_T
+
+__BEGIN_DECLS
+
+extern time_t time(time_t *);
+extern int nanosleep(const struct timespec *, struct timespec *);
+
+extern char *strtotimeval(const char *str, struct timeval *tv);
+
+struct tm {
+ int tm_sec; /* seconds */
+ int tm_min; /* minutes */
+ int tm_hour; /* hours */
+ int tm_mday; /* day of the month */
+ int tm_mon; /* month */
+ int tm_year; /* year */
+ int tm_wday; /* day of the week */
+ int tm_yday; /* day in the year */
+ int tm_isdst; /* daylight saving time */
+
+ long int tm_gmtoff; /* Seconds east of UTC. */
+ const char *tm_zone; /* Timezone abbreviation. */
+
+};
+
+/* defining TM_ZONE indicates that we have a "timezone abbreviation" field in
+ * struct tm, the value should be the field name
+ */
+#define TM_ZONE tm_zone
+
+extern char* asctime(const struct tm* a);
+extern char* asctime_r(const struct tm* a, char* buf);
+
+/* Return the difference between TIME1 and TIME0. */
+extern double difftime (time_t __time1, time_t __time0);
+extern time_t mktime (struct tm *a);
+
+extern struct tm* localtime(const time_t *t);
+extern struct tm* localtime_r(const time_t *timep, struct tm *result);
+
+extern struct tm* gmtime(const time_t *timep);
+extern struct tm* gmtime_r(const time_t *timep, struct tm *result);
+
+extern char* strptime(const char *buf, const char *fmt, struct tm *tm);
+extern size_t strftime(char *s, size_t max, const char *format, const struct tm *tm);
+
+extern char *ctime(const time_t *timep);
+extern char *ctime_r(const time_t *timep, char *buf);
+
+extern void tzset(void);
+
+/* global includes */
+extern char* tzname[];
+extern int daylight;
+extern long int timezone;
+
+#define CLOCKS_PER_SEC 1000000
+
+extern clock_t clock(void);
+
+/* BIONIC: extra linux clock goodies */
+extern int clock_getres(int, struct timespec *);
+extern int clock_gettime(int, struct timespec *);
+
+#define CLOCK_REALTIME 0
+#define CLOCK_MONOTONIC 1
+#define CLOCK_PROCESS_CPUTIME_ID 2
+#define CLOCK_THREAD_CPUTIME_ID 3
+#define CLOCK_REALTIME_HR 4
+#define CLOCK_MONOTONIC_HR 5
+
+extern int timer_create(int, struct sigevent*, timer_t*);
+extern int timer_delete(timer_t);
+extern int timer_settime(timer_t timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue);
+extern int timer_gettime(timer_t timerid, struct itimerspec *value);
+extern int timer_getoverrun(timer_t timerid);
+
+__END_DECLS
+
+#endif /* _TIME_H_ */
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/time64.h b/ndk/build/platforms/android-4/arch-arm/usr/include/time64.h
deleted file mode 120000
index 9e4ca23..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/time64.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/time64.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/time64.h b/ndk/build/platforms/android-4/arch-arm/usr/include/time64.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/time64.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/time64.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/typeinfo b/ndk/build/platforms/android-4/arch-arm/usr/include/typeinfo
deleted file mode 120000
index 35bacb5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/typeinfo
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/typeinfo
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/typeinfo b/ndk/build/platforms/android-4/arch-arm/usr/include/typeinfo
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/typeinfo
rename to ndk/build/platforms/android-4/arch-arm/usr/include/typeinfo
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/unistd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/unistd.h
deleted file mode 120000
index 378e20d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/unistd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/unistd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/unistd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/unistd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/unistd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/unistd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/util.h b/ndk/build/platforms/android-4/arch-arm/usr/include/util.h
deleted file mode 120000
index c8de0fe..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/util.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/util.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/util.h b/ndk/build/platforms/android-4/arch-arm/usr/include/util.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/util.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/util.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/utility b/ndk/build/platforms/android-4/arch-arm/usr/include/utility
deleted file mode 120000
index f670e68..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/utility
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/utility
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/utility b/ndk/build/platforms/android-4/arch-arm/usr/include/utility
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/utility
rename to ndk/build/platforms/android-4/arch-arm/usr/include/utility
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/utime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/utime.h
deleted file mode 120000
index 520a474..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/utime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/utime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/utime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/utime.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/utime.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/utime.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/utmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/utmp.h
deleted file mode 120000
index 9fe8b95..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/utmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/utmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/utmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/utmp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/utmp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/utmp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/wchar.h b/ndk/build/platforms/android-4/arch-arm/usr/include/wchar.h
deleted file mode 120000
index 5a35644..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/wchar.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/wchar.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/wchar.h b/ndk/build/platforms/android-4/arch-arm/usr/include/wchar.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/wchar.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/wchar.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/wctype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/wctype.h
deleted file mode 120000
index 2a2a823..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/wctype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/wctype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/wctype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/wctype.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/wctype.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/wctype.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/zconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/zconf.h
deleted file mode 120000
index 10d4a1e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/zconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/zconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/zconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/zconf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/zconf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/zconf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/zlib.h b/ndk/build/platforms/android-4/arch-arm/usr/include/zlib.h
deleted file mode 120000
index d9e63a4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/zlib.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/zlib.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/zlib.h b/ndk/build/platforms/android-4/arch-arm/usr/include/zlib.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/zlib.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/zlib.h
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/__ffs.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/__ffs.h
deleted file mode 100644
index 3d135bd..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/__ffs.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** This header was automatically generated from a Linux kernel header
- *** of the same name, to make information necessary for userspace to
- *** call into the kernel available to libc. It contains only constants,
- *** structures, and macros generated from the original header, and thus,
- *** contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS___FFS_H_
-#define _ASM_GENERIC_BITOPS___FFS_H_
-
-#include <asm/types.h>
-
-#if BITS_PER_LONG == 64
-#endif
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/atomic.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/atomic.h
deleted file mode 100644
index 5f53ba9..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/atomic.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** This header was automatically generated from a Linux kernel header
- *** of the same name, to make information necessary for userspace to
- *** call into the kernel available to libc. It contains only constants,
- *** structures, and macros generated from the original header, and thus,
- *** contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_ATOMIC_H_
-#define _ASM_GENERIC_BITOPS_ATOMIC_H_
-
-#include <asm/types.h>
-
-#define BITOP_MASK(nr) (1UL << ((nr) % BITS_PER_LONG))
-#define BITOP_WORD(nr) ((nr) / BITS_PER_LONG)
-
-#define _atomic_spin_lock_irqsave(l,f) do { local_irq_save(f); } while (0)
-#define _atomic_spin_unlock_irqrestore(l,f) do { local_irq_restore(f); } while (0)
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/ffz.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/ffz.h
deleted file mode 100644
index 18da271..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/ffz.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** This header was automatically generated from a Linux kernel header
- *** of the same name, to make information necessary for userspace to
- *** call into the kernel available to libc. It contains only constants,
- *** structures, and macros generated from the original header, and thus,
- *** contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_FFZ_H_
-#define _ASM_GENERIC_BITOPS_FFZ_H_
-
-#define ffz(x) __ffs(~(x))
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/find.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/find.h
deleted file mode 100644
index 8361cfe..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/find.h
+++ /dev/null
@@ -1,18 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** This header was automatically generated from a Linux kernel header
- *** of the same name, to make information necessary for userspace to
- *** call into the kernel available to libc. It contains only constants,
- *** structures, and macros generated from the original header, and thus,
- *** contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_FIND_H_
-#define _ASM_GENERIC_BITOPS_FIND_H_
-
-#define find_first_bit(addr, size) find_next_bit((addr), (size), 0)
-#define find_first_zero_bit(addr, size) find_next_zero_bit((addr), (size), 0)
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/fls.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/fls.h
deleted file mode 100644
index 8adbf31..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/fls.h
+++ /dev/null
@@ -1,15 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** This header was automatically generated from a Linux kernel header
- *** of the same name, to make information necessary for userspace to
- *** call into the kernel available to libc. It contains only constants,
- *** structures, and macros generated from the original header, and thus,
- *** contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_FLS_H_
-#define _ASM_GENERIC_BITOPS_FLS_H_
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/fls64.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/fls64.h
deleted file mode 100644
index af77098..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/fls64.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** This header was automatically generated from a Linux kernel header
- *** of the same name, to make information necessary for userspace to
- *** call into the kernel available to libc. It contains only constants,
- *** structures, and macros generated from the original header, and thus,
- *** contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_FLS64_H_
-#define _ASM_GENERIC_BITOPS_FLS64_H_
-
-#include <asm/types.h>
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/le.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/le.h
deleted file mode 100644
index 97ca973..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/le.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** This header was automatically generated from a Linux kernel header
- *** of the same name, to make information necessary for userspace to
- *** call into the kernel available to libc. It contains only constants,
- *** structures, and macros generated from the original header, and thus,
- *** contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_LE_H_
-#define _ASM_GENERIC_BITOPS_LE_H_
-
-#include <asm/types.h>
-#include <asm/byteorder.h>
-
-#define BITOP_WORD(nr) ((nr) / BITS_PER_LONG)
-#define BITOP_LE_SWIZZLE ((BITS_PER_LONG-1) & ~0x7)
-
-#ifdef __LITTLE_ENDIAN
-
-#define generic_test_le_bit(nr, addr) test_bit(nr, addr)
-#define generic___set_le_bit(nr, addr) __set_bit(nr, addr)
-#define generic___clear_le_bit(nr, addr) __clear_bit(nr, addr)
-
-#define generic_test_and_set_le_bit(nr, addr) test_and_set_bit(nr, addr)
-#define generic_test_and_clear_le_bit(nr, addr) test_and_clear_bit(nr, addr)
-
-#define generic___test_and_set_le_bit(nr, addr) __test_and_set_bit(nr, addr)
-#define generic___test_and_clear_le_bit(nr, addr) __test_and_clear_bit(nr, addr)
-
-#define generic_find_next_zero_le_bit(addr, size, offset) find_next_zero_bit(addr, size, offset)
-
-#elif defined(__BIG_ENDIAN)
-
-#define generic_test_le_bit(nr, addr) test_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-#define generic___set_le_bit(nr, addr) __set_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-#define generic___clear_le_bit(nr, addr) __clear_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-
-#define generic_test_and_set_le_bit(nr, addr) test_and_set_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-#define generic_test_and_clear_le_bit(nr, addr) test_and_clear_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-
-#define generic___test_and_set_le_bit(nr, addr) __test_and_set_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-#define generic___test_and_clear_le_bit(nr, addr) __test_and_clear_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-
-#else
-#error "Please fix <asm/byteorder.h>"
-#endif
-
-#define generic_find_first_zero_le_bit(addr, size) generic_find_next_zero_le_bit((addr), (size), 0)
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/non-atomic.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/non-atomic.h
deleted file mode 100644
index 727f736..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/non-atomic.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** This header was automatically generated from a Linux kernel header
- *** of the same name, to make information necessary for userspace to
- *** call into the kernel available to libc. It contains only constants,
- *** structures, and macros generated from the original header, and thus,
- *** contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_NON_ATOMIC_H_
-#define _ASM_GENERIC_BITOPS_NON_ATOMIC_H_
-
-#include <asm/types.h>
-
-#define BITOP_MASK(nr) (1UL << ((nr) % BITS_PER_LONG))
-#define BITOP_WORD(nr) ((nr) / BITS_PER_LONG)
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/endian.h b/ndk/build/platforms/android-4/common/include/endian.h
deleted file mode 100644
index 475b48c..0000000
--- a/ndk/build/platforms/android-4/common/include/endian.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _ENDIAN_H_
-#define _ENDIAN_H_
-
-#include <sys/endian.h>
-
-#endif /* _ENDIAN_H_ */
diff --git a/ndk/build/platforms/android-4/common/include/stdint.h b/ndk/build/platforms/android-4/common/include/stdint.h
deleted file mode 100644
index 39a8ab8..0000000
--- a/ndk/build/platforms/android-4/common/include/stdint.h
+++ /dev/null
@@ -1,262 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _STDINT_H
-#define _STDINT_H
-
-#include <stddef.h>
-#include <sys/_types.h>
-
-
-
-#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS)
-# define __STDINT_LIMITS
-#endif
-
-#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS)
-# define __STDINT_MACROS
-#endif
-
-/* the definitions of STDINT_LIMITS depend on those of STDINT_MACROS */
-#if defined __STDINT_LIMITS && !defined __STDINT_MACROS
-# define __STDINT_MACROS
-#endif
-
-typedef __int8_t int8_t;
-typedef __uint8_t uint8_t;
-typedef __int16_t int16_t;
-typedef __uint16_t uint16_t;
-typedef __int32_t int32_t;
-typedef __uint32_t uint32_t;
-#if !defined(__STRICT_ANSI__)
-typedef __int64_t int64_t;
-typedef __uint64_t uint64_t;
-#endif
-
-/*
- * int8_t & uint8_t
- */
-
-typedef int8_t int_least8_t;
-typedef int8_t int_fast8_t;
-
-typedef uint8_t uint_least8_t;
-typedef uint8_t uint_fast8_t;
-
-#ifdef __STDINT_LIMITS
-# define INT8_MIN (-128)
-# define INT8_MAX (127)
-# define INT_LEAST8_MIN INT8_MIN
-# define INT_LEAST8_MAX INT8_MAX
-# define INT_FAST8_MIN INT8_MIN
-# define INT_FAST8_MAX INT8_MAX
-
-# define UINT8_MAX (255U)
-# define UINT_LEAST8_MAX UINT8_MAX
-# define UINT_FAST8_MAX UINT8_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-# define INT8_C(c) c
-# define INT_LEAST8_C(c) INT8_C(c)
-# define INT_FAST8_C(c) INT8_C(c)
-
-# define UINT8_C(c) c ## U
-# define UINT_LEAST8_C(c) UINT8_C(c)
-# define UINT_FAST8_C(c) UINT8_C(c)
-#endif
-
-/*
- * int16_t & uint16_t
- */
-
-
-typedef int16_t int_least16_t;
-typedef int32_t int_fast16_t;
-
-typedef uint16_t uint_least16_t;
-typedef uint32_t uint_fast16_t;
-
-#ifdef __STDINT_LIMITS
-# define INT16_MIN (-32768)
-# define INT16_MAX (32767)
-# define INT_LEAST16_MIN INT16_MIN
-# define INT_LEAST16_MAX INT16_MAX
-# define INT_FAST16_MIN INT32_MIN
-# define INT_FAST16_MAX INT32_MAX
-
-# define UINT16_MAX (65535U)
-# define UINT_LEAST16_MAX UINT16_MAX
-# define UINT_FAST16_MAX UINT32_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-# define INT16_C(c) c
-# define INT_LEAST16_C(c) INT16_C(c)
-# define INT_FAST16_C(c) INT32_C(c)
-
-# define UINT16_C(c) c ## U
-# define UINT_LEAST16_C(c) UINT16_C(c)
-# define UINT_FAST16_C(c) UINT32_C(c)
-#endif
-
-/*
- * int32_t & uint32_t
- */
-
-typedef int32_t int_least32_t;
-typedef int32_t int_fast32_t;
-
-typedef uint32_t uint_least32_t;
-typedef uint32_t uint_fast32_t;
-
-#ifdef __STDINT_LIMITS
-# define INT32_MIN (-2147483647-1)
-# define INT32_MAX (2147483647)
-# define INT_LEAST32_MIN INT32_MIN
-# define INT_LEAST32_MAX INT32_MAX
-# define INT_FAST32_MIN INT32_MIN
-# define INT_FAST32_MAX INT32_MAX
-
-# define UINT32_MAX (4294967295U)
-# define UINT_LEAST32_MAX UINT32_MAX
-# define UINT_FAST32_MAX UINT32_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-# define INT32_C(c) c
-# define INT_LEAST32_C(c) INT32_C(c)
-# define INT_FAST32_C(c) INT32_C(c)
-
-# define UINT32_C(c) c ## U
-# define UINT_LEAST32_C(c) UINT32_C(c)
-# define UINT_FAST32_C(c) UINT32_C(c)
-#endif
-
-#if !defined(__STRICT_ANSI__)
-/*
- * int64_t
- */
-typedef int64_t int_least64_t;
-typedef int64_t int_fast64_t;
-
-typedef uint64_t uint_least64_t;
-typedef uint64_t uint_fast64_t;
-
-
-#ifdef __STDINT_LIMITS
-# define INT64_MIN (__INT64_C(-9223372036854775807)-1)
-# define INT64_MAX (__INT64_C(9223372036854775807))
-# define INT_LEAST64_MIN INT64_MIN
-# define INT_LEAST64_MAX INT64_MAX
-# define INT_FAST64_MIN INT64_MIN
-# define INT_FAST64_MAX INT64_MAX
-# define UINT64_MAX (__UINT64_C(18446744073709551615))
-
-# define UINT_LEAST64_MAX UINT64_MAX
-# define UINT_FAST64_MAX UINT64_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-# define __INT64_C(c) c ## LL
-# define INT64_C(c) __INT64_C(c)
-# define INT_LEAST64_C(c) INT64_C(c)
-# define INT_FAST64_C(c) INT64_C(c)
-
-# define __UINT64_C(c) c ## ULL
-# define UINT64_C(c) __UINT64_C(c)
-# define UINT_LEAST64_C(c) UINT64_C(c)
-# define UINT_FAST64_C(c) UINT64_C(c)
-#endif
-
-
-# define __PRI64_RANK "ll"
-# define __PRIFAST_RANK ""
-# define __PRIPTR_RANK ""
-
-#endif /* !__STRICT_ANSI__ */
-
-/*
- * intptr_t & uintptr_t
- */
-
-typedef int intptr_t;
-typedef unsigned int uintptr_t;
-
-# define INTPTR_MIN INT32_MIN
-# define INTPTR_MAX INT32_MAX
-# define UINTPTR_MAX UINT32_MAX
-# define INTPTR_C(c) INT32_C(c)
-# define UINTPTR_C(c) UINT32_C(c)
-# define PTRDIFF_C(c) INT32_C(c)
-# define PTRDIFF_MIN INT32_MIN
-# define PTRDIFF_MAX INT32_MAX
-
-
-/*
- * intmax_t & uintmax_t
- */
-
-#if !defined(__STRICT_ANSI__)
-
-typedef uint64_t uintmax_t;
-typedef int64_t intmax_t;
-
-#define INTMAX_MIN INT64_MIN
-#define INTMAX_MAX INT64_MAX
-#define UINTMAX_MAX UINT64_MAX
-
-#define INTMAX_C(c) INT64_C(c)
-#define UINTMAX_C(c) UINT64_C(c)
-
-#else /* __STRICT_ANSI__ */
-
-typedef uint32_t uintmax_t;
-typedef int32_t intmax_t;
-
-#define INTMAX_MIN INT32_MIN
-#define INTMAX_MAX INT32_MAX
-#define UINTMAX_MAX UINT32_MAX
-
-#define INTMAX_C(c) INT32_C(c)
-#define UINTMAX_C(c) UINT32_C(c)
-
-#endif /* __STRICT_ANSI__ */
-
-
-/* size_t is defined by the GCC-specific <stddef.h> */
-#ifndef _SSIZE_T_DEFINED_
-#define _SSIZE_T_DEFINED_
-typedef long int ssize_t;
-#endif
-
-#define _BITSIZE 32
-
-/* Keep the kernel from trying to define these types... */
-#define __BIT_TYPES_DEFINED__
-
-#endif /* _STDINT_H */
diff --git a/ndk/build/platforms/android-4/common/include/strings.h b/ndk/build/platforms/android-4/common/include/strings.h
deleted file mode 100644
index 1f73e21..0000000
--- a/ndk/build/platforms/android-4/common/include/strings.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* $NetBSD: strings.h,v 1.10 2005/02/03 04:39:32 perry Exp $ */
-
-/*-
- * Copyright (c) 1998 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Klaus Klein.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the NetBSD
- * Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _STRINGS_H_
-#define _STRINGS_H_
-
-#include <sys/cdefs.h>
-
-__BEGIN_DECLS
-int bcmp(const void *, const void *, size_t);
-void bcopy(const void *, void *, size_t);
-void bzero(void *, size_t);
-int ffs(int);
-char *index(const char *, int);
-char *rindex(const char *, int);
-int strcasecmp(const char *, const char *);
-int strncasecmp(const char *, const char *, size_t);
-__END_DECLS
-
-#endif /* !defined(_STRINGS_H_) */
diff --git a/ndk/build/platforms/android-4/common/include/sys/stat.h b/ndk/build/platforms/android-4/common/include/sys/stat.h
deleted file mode 100644
index 23ab5ae..0000000
--- a/ndk/build/platforms/android-4/common/include/sys/stat.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _SYS_STAT_H_
-#define _SYS_STAT_H_
-
-#include <sys/cdefs.h>
-#include <sys/types.h>
-#include <sys/time.h>
-#include <linux/stat.h>
-
-#include <endian.h>
-
-__BEGIN_DECLS
-
-/* really matches stat64 in the kernel, hence the padding
- * Note: The kernel zero's the padded region because glibc might read them
- * in the hope that the kernel has stretched to using larger sizes.
- */
-struct stat {
- unsigned long long st_dev;
- unsigned char __pad0[4];
-
- unsigned long __st_ino;
- unsigned int st_mode;
- unsigned int st_nlink;
-
- unsigned long st_uid;
- unsigned long st_gid;
-
- unsigned long long st_rdev;
- unsigned char __pad3[4];
-
- long long st_size;
- unsigned long st_blksize;
- unsigned long long st_blocks;
-
- unsigned long st_atime;
- unsigned long st_atime_nsec;
-
- unsigned long st_mtime;
- unsigned long st_mtime_nsec;
-
- unsigned long st_ctime;
- unsigned long st_ctime_nsec;
-
- unsigned long long st_ino;
-};
-
-extern int chmod(const char *, mode_t);
-extern int fchmod(int, mode_t);
-extern int mkdir(const char *, mode_t);
-
-extern int stat(const char *, struct stat *);
-extern int fstat(int, struct stat *);
-extern int lstat(const char *, struct stat *);
-extern int mknod(const char *, mode_t, dev_t);
-extern mode_t umask(mode_t);
-
-#define stat64 stat
-#define fstat64 fstat
-#define lstat64 lstat
-
-static __inline__ int mkfifo(const char *__p, mode_t __m)
-{
- return mknod(__p, (__m & ~S_IFMT) | S_IFIFO, (dev_t)0);
-}
-
-extern int fstatat(int dirfd, const char *path, struct stat *buf, int flags);
-extern int mkdirat(int dirfd, const char *pathname, mode_t mode);
-extern int fchownat(int dirfd, const char *path, uid_t owner, gid_t group, int flags);
-extern int fchmodat(int dirfd, const char *path, mode_t mode, int flags);
-extern int renameat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath);
-
-__END_DECLS
-
-#endif /* _SYS_STAT_H_ */
diff --git a/ndk/build/platforms/android-4/common/include/time.h b/ndk/build/platforms/android-4/common/include/time.h
deleted file mode 100644
index 35c2358..0000000
--- a/ndk/build/platforms/android-4/common/include/time.h
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _TIME_H_
-#define _TIME_H_
-
-#include <sys/cdefs.h>
-#include <sys/time.h>
-
-#define __ARCH_SI_UID_T __kernel_uid32_t
-#include <asm/siginfo.h>
-#undef __ARCH_SI_UID_T
-
-__BEGIN_DECLS
-
-extern time_t time(time_t *);
-extern int nanosleep(const struct timespec *, struct timespec *);
-
-extern char *strtotimeval(const char *str, struct timeval *tv);
-
-struct tm {
- int tm_sec; /* seconds */
- int tm_min; /* minutes */
- int tm_hour; /* hours */
- int tm_mday; /* day of the month */
- int tm_mon; /* month */
- int tm_year; /* year */
- int tm_wday; /* day of the week */
- int tm_yday; /* day in the year */
- int tm_isdst; /* daylight saving time */
-
- long int tm_gmtoff; /* Seconds east of UTC. */
- const char *tm_zone; /* Timezone abbreviation. */
-
-};
-
-/* defining TM_ZONE indicates that we have a "timezone abbreviation" field in
- * struct tm, the value should be the field name
- */
-#define TM_ZONE tm_zone
-
-extern char* asctime(const struct tm* a);
-extern char* asctime_r(const struct tm* a, char* buf);
-
-/* Return the difference between TIME1 and TIME0. */
-extern double difftime (time_t __time1, time_t __time0);
-extern time_t mktime (struct tm *a);
-
-extern struct tm* localtime(const time_t *t);
-extern struct tm* localtime_r(const time_t *timep, struct tm *result);
-
-extern struct tm* gmtime(const time_t *timep);
-extern struct tm* gmtime_r(const time_t *timep, struct tm *result);
-
-extern char* strptime(const char *buf, const char *fmt, struct tm *tm);
-extern size_t strftime(char *s, size_t max, const char *format, const struct tm *tm);
-
-extern char *ctime(const time_t *timep);
-extern char *ctime_r(const time_t *timep, char *buf);
-
-/* global includes */
-extern char* tzname[];
-extern int daylight;
-extern long int timezone;
-
-#define CLOCKS_PER_SEC 1000000
-
-extern clock_t clock();
-
-/* BIONIC: extra linux clock goodies */
-extern int clock_getres(int, struct timespec *);
-extern int clock_gettime(int, struct timespec *);
-
-#define CLOCK_REALTIME 0
-#define CLOCK_MONOTONIC 1
-#define CLOCK_PROCESS_CPUTIME_ID 2
-#define CLOCK_THREAD_CPUTIME_ID 3
-#define CLOCK_REALTIME_HR 4
-#define CLOCK_MONOTONIC_HR 5
-
-extern int timer_create(int, struct sigevent*, timer_t*);
-extern int timer_delete(timer_t);
-extern int timer_settime(timer_t timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue);
-extern int timer_gettime(timer_t timerid, struct itimerspec *value);
-extern int timer_getoverrun(timer_t timerid);
-
-__END_DECLS
-
-#endif /* _TIME_H_ */
diff --git a/ndk/build/platforms/android-4/common/include/GLES/gl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES/gl.h
similarity index 100%
copy from ndk/build/platforms/android-4/common/include/GLES/gl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/GLES/gl.h
diff --git a/ndk/build/platforms/android-4/common/include/GLES/glext.h b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES/glext.h
similarity index 100%
copy from ndk/build/platforms/android-4/common/include/GLES/glext.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/GLES/glext.h
diff --git a/ndk/build/platforms/android-4/common/include/GLES/glplatform.h b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES/glplatform.h
similarity index 100%
copy from ndk/build/platforms/android-4/common/include/GLES/glplatform.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/GLES/glplatform.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2.h b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2.h
new file mode 100644
index 0000000..0182a67
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2.h
@@ -0,0 +1,620 @@
+#ifndef __gl2_h_
+#define __gl2_h_
+
+/* $Revision: 7173 $ on $Date:: 2009-01-09 11:18:21 -0800 #$ */
+
+#include <GLES2/gl2platform.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * This document is licensed under the SGI Free Software B License Version
+ * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
+ */
+
+/*-------------------------------------------------------------------------
+ * Data type definitions
+ *-----------------------------------------------------------------------*/
+
+typedef void GLvoid;
+typedef unsigned int GLenum;
+typedef unsigned char GLboolean;
+typedef unsigned int GLbitfield;
+typedef khronos_int8_t GLbyte;
+typedef short GLshort;
+typedef int GLint;
+typedef int GLsizei;
+typedef khronos_uint8_t GLubyte;
+typedef unsigned short GLushort;
+typedef unsigned int GLuint;
+typedef khronos_float_t GLfloat;
+typedef khronos_float_t GLclampf;
+typedef khronos_int32_t GLfixed;
+
+/* GL types for handling large vertex buffer objects */
+typedef khronos_intptr_t GLintptr;
+typedef khronos_ssize_t GLsizeiptr;
+
+/* OpenGL ES core versions */
+#define GL_ES_VERSION_2_0 1
+
+/* ClearBufferMask */
+#define GL_DEPTH_BUFFER_BIT 0x00000100
+#define GL_STENCIL_BUFFER_BIT 0x00000400
+#define GL_COLOR_BUFFER_BIT 0x00004000
+
+/* Boolean */
+#define GL_FALSE 0
+#define GL_TRUE 1
+
+/* BeginMode */
+#define GL_POINTS 0x0000
+#define GL_LINES 0x0001
+#define GL_LINE_LOOP 0x0002
+#define GL_LINE_STRIP 0x0003
+#define GL_TRIANGLES 0x0004
+#define GL_TRIANGLE_STRIP 0x0005
+#define GL_TRIANGLE_FAN 0x0006
+
+/* AlphaFunction (not supported in ES20) */
+/* GL_NEVER */
+/* GL_LESS */
+/* GL_EQUAL */
+/* GL_LEQUAL */
+/* GL_GREATER */
+/* GL_NOTEQUAL */
+/* GL_GEQUAL */
+/* GL_ALWAYS */
+
+/* BlendingFactorDest */
+#define GL_ZERO 0
+#define GL_ONE 1
+#define GL_SRC_COLOR 0x0300
+#define GL_ONE_MINUS_SRC_COLOR 0x0301
+#define GL_SRC_ALPHA 0x0302
+#define GL_ONE_MINUS_SRC_ALPHA 0x0303
+#define GL_DST_ALPHA 0x0304
+#define GL_ONE_MINUS_DST_ALPHA 0x0305
+
+/* BlendingFactorSrc */
+/* GL_ZERO */
+/* GL_ONE */
+#define GL_DST_COLOR 0x0306
+#define GL_ONE_MINUS_DST_COLOR 0x0307
+#define GL_SRC_ALPHA_SATURATE 0x0308
+/* GL_SRC_ALPHA */
+/* GL_ONE_MINUS_SRC_ALPHA */
+/* GL_DST_ALPHA */
+/* GL_ONE_MINUS_DST_ALPHA */
+
+/* BlendEquationSeparate */
+#define GL_FUNC_ADD 0x8006
+#define GL_BLEND_EQUATION 0x8009
+#define GL_BLEND_EQUATION_RGB 0x8009 /* same as BLEND_EQUATION */
+#define GL_BLEND_EQUATION_ALPHA 0x883D
+
+/* BlendSubtract */
+#define GL_FUNC_SUBTRACT 0x800A
+#define GL_FUNC_REVERSE_SUBTRACT 0x800B
+
+/* Separate Blend Functions */
+#define GL_BLEND_DST_RGB 0x80C8
+#define GL_BLEND_SRC_RGB 0x80C9
+#define GL_BLEND_DST_ALPHA 0x80CA
+#define GL_BLEND_SRC_ALPHA 0x80CB
+#define GL_CONSTANT_COLOR 0x8001
+#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
+#define GL_CONSTANT_ALPHA 0x8003
+#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
+#define GL_BLEND_COLOR 0x8005
+
+/* Buffer Objects */
+#define GL_ARRAY_BUFFER 0x8892
+#define GL_ELEMENT_ARRAY_BUFFER 0x8893
+#define GL_ARRAY_BUFFER_BINDING 0x8894
+#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895
+
+#define GL_STREAM_DRAW 0x88E0
+#define GL_STATIC_DRAW 0x88E4
+#define GL_DYNAMIC_DRAW 0x88E8
+
+#define GL_BUFFER_SIZE 0x8764
+#define GL_BUFFER_USAGE 0x8765
+
+#define GL_CURRENT_VERTEX_ATTRIB 0x8626
+
+/* CullFaceMode */
+#define GL_FRONT 0x0404
+#define GL_BACK 0x0405
+#define GL_FRONT_AND_BACK 0x0408
+
+/* DepthFunction */
+/* GL_NEVER */
+/* GL_LESS */
+/* GL_EQUAL */
+/* GL_LEQUAL */
+/* GL_GREATER */
+/* GL_NOTEQUAL */
+/* GL_GEQUAL */
+/* GL_ALWAYS */
+
+/* EnableCap */
+#define GL_TEXTURE_2D 0x0DE1
+#define GL_CULL_FACE 0x0B44
+#define GL_BLEND 0x0BE2
+#define GL_DITHER 0x0BD0
+#define GL_STENCIL_TEST 0x0B90
+#define GL_DEPTH_TEST 0x0B71
+#define GL_SCISSOR_TEST 0x0C11
+#define GL_POLYGON_OFFSET_FILL 0x8037
+#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
+#define GL_SAMPLE_COVERAGE 0x80A0
+
+/* ErrorCode */
+#define GL_NO_ERROR 0
+#define GL_INVALID_ENUM 0x0500
+#define GL_INVALID_VALUE 0x0501
+#define GL_INVALID_OPERATION 0x0502
+#define GL_OUT_OF_MEMORY 0x0505
+
+/* FrontFaceDirection */
+#define GL_CW 0x0900
+#define GL_CCW 0x0901
+
+/* GetPName */
+#define GL_LINE_WIDTH 0x0B21
+#define GL_ALIASED_POINT_SIZE_RANGE 0x846D
+#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
+#define GL_CULL_FACE_MODE 0x0B45
+#define GL_FRONT_FACE 0x0B46
+#define GL_DEPTH_RANGE 0x0B70
+#define GL_DEPTH_WRITEMASK 0x0B72
+#define GL_DEPTH_CLEAR_VALUE 0x0B73
+#define GL_DEPTH_FUNC 0x0B74
+#define GL_STENCIL_CLEAR_VALUE 0x0B91
+#define GL_STENCIL_FUNC 0x0B92
+#define GL_STENCIL_FAIL 0x0B94
+#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
+#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
+#define GL_STENCIL_REF 0x0B97
+#define GL_STENCIL_VALUE_MASK 0x0B93
+#define GL_STENCIL_WRITEMASK 0x0B98
+#define GL_STENCIL_BACK_FUNC 0x8800
+#define GL_STENCIL_BACK_FAIL 0x8801
+#define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802
+#define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803
+#define GL_STENCIL_BACK_REF 0x8CA3
+#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4
+#define GL_STENCIL_BACK_WRITEMASK 0x8CA5
+#define GL_VIEWPORT 0x0BA2
+#define GL_SCISSOR_BOX 0x0C10
+/* GL_SCISSOR_TEST */
+#define GL_COLOR_CLEAR_VALUE 0x0C22
+#define GL_COLOR_WRITEMASK 0x0C23
+#define GL_UNPACK_ALIGNMENT 0x0CF5
+#define GL_PACK_ALIGNMENT 0x0D05
+#define GL_MAX_TEXTURE_SIZE 0x0D33
+#define GL_MAX_VIEWPORT_DIMS 0x0D3A
+#define GL_SUBPIXEL_BITS 0x0D50
+#define GL_RED_BITS 0x0D52
+#define GL_GREEN_BITS 0x0D53
+#define GL_BLUE_BITS 0x0D54
+#define GL_ALPHA_BITS 0x0D55
+#define GL_DEPTH_BITS 0x0D56
+#define GL_STENCIL_BITS 0x0D57
+#define GL_POLYGON_OFFSET_UNITS 0x2A00
+/* GL_POLYGON_OFFSET_FILL */
+#define GL_POLYGON_OFFSET_FACTOR 0x8038
+#define GL_TEXTURE_BINDING_2D 0x8069
+#define GL_SAMPLE_BUFFERS 0x80A8
+#define GL_SAMPLES 0x80A9
+#define GL_SAMPLE_COVERAGE_VALUE 0x80AA
+#define GL_SAMPLE_COVERAGE_INVERT 0x80AB
+
+/* GetTextureParameter */
+/* GL_TEXTURE_MAG_FILTER */
+/* GL_TEXTURE_MIN_FILTER */
+/* GL_TEXTURE_WRAP_S */
+/* GL_TEXTURE_WRAP_T */
+
+#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
+#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
+
+/* HintMode */
+#define GL_DONT_CARE 0x1100
+#define GL_FASTEST 0x1101
+#define GL_NICEST 0x1102
+
+/* HintTarget */
+#define GL_GENERATE_MIPMAP_HINT 0x8192
+
+/* DataType */
+#define GL_BYTE 0x1400
+#define GL_UNSIGNED_BYTE 0x1401
+#define GL_SHORT 0x1402
+#define GL_UNSIGNED_SHORT 0x1403
+#define GL_INT 0x1404
+#define GL_UNSIGNED_INT 0x1405
+#define GL_FLOAT 0x1406
+#define GL_FIXED 0x140C
+
+/* PixelFormat */
+#define GL_DEPTH_COMPONENT 0x1902
+#define GL_ALPHA 0x1906
+#define GL_RGB 0x1907
+#define GL_RGBA 0x1908
+#define GL_LUMINANCE 0x1909
+#define GL_LUMINANCE_ALPHA 0x190A
+
+/* PixelType */
+/* GL_UNSIGNED_BYTE */
+#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
+#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
+#define GL_UNSIGNED_SHORT_5_6_5 0x8363
+
+/* Shaders */
+#define GL_FRAGMENT_SHADER 0x8B30
+#define GL_VERTEX_SHADER 0x8B31
+#define GL_MAX_VERTEX_ATTRIBS 0x8869
+#define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB
+#define GL_MAX_VARYING_VECTORS 0x8DFC
+#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
+#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
+#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
+#define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD
+#define GL_SHADER_TYPE 0x8B4F
+#define GL_DELETE_STATUS 0x8B80
+#define GL_LINK_STATUS 0x8B82
+#define GL_VALIDATE_STATUS 0x8B83
+#define GL_ATTACHED_SHADERS 0x8B85
+#define GL_ACTIVE_UNIFORMS 0x8B86
+#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87
+#define GL_ACTIVE_ATTRIBUTES 0x8B89
+#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A
+#define GL_SHADING_LANGUAGE_VERSION 0x8B8C
+#define GL_CURRENT_PROGRAM 0x8B8D
+
+/* StencilFunction */
+#define GL_NEVER 0x0200
+#define GL_LESS 0x0201
+#define GL_EQUAL 0x0202
+#define GL_LEQUAL 0x0203
+#define GL_GREATER 0x0204
+#define GL_NOTEQUAL 0x0205
+#define GL_GEQUAL 0x0206
+#define GL_ALWAYS 0x0207
+
+/* StencilOp */
+/* GL_ZERO */
+#define GL_KEEP 0x1E00
+#define GL_REPLACE 0x1E01
+#define GL_INCR 0x1E02
+#define GL_DECR 0x1E03
+#define GL_INVERT 0x150A
+#define GL_INCR_WRAP 0x8507
+#define GL_DECR_WRAP 0x8508
+
+/* StringName */
+#define GL_VENDOR 0x1F00
+#define GL_RENDERER 0x1F01
+#define GL_VERSION 0x1F02
+#define GL_EXTENSIONS 0x1F03
+
+/* TextureMagFilter */
+#define GL_NEAREST 0x2600
+#define GL_LINEAR 0x2601
+
+/* TextureMinFilter */
+/* GL_NEAREST */
+/* GL_LINEAR */
+#define GL_NEAREST_MIPMAP_NEAREST 0x2700
+#define GL_LINEAR_MIPMAP_NEAREST 0x2701
+#define GL_NEAREST_MIPMAP_LINEAR 0x2702
+#define GL_LINEAR_MIPMAP_LINEAR 0x2703
+
+/* TextureParameterName */
+#define GL_TEXTURE_MAG_FILTER 0x2800
+#define GL_TEXTURE_MIN_FILTER 0x2801
+#define GL_TEXTURE_WRAP_S 0x2802
+#define GL_TEXTURE_WRAP_T 0x2803
+
+/* TextureTarget */
+/* GL_TEXTURE_2D */
+#define GL_TEXTURE 0x1702
+
+#define GL_TEXTURE_CUBE_MAP 0x8513
+#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
+#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
+#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
+#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
+#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
+#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
+#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
+#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
+
+/* TextureUnit */
+#define GL_TEXTURE0 0x84C0
+#define GL_TEXTURE1 0x84C1
+#define GL_TEXTURE2 0x84C2
+#define GL_TEXTURE3 0x84C3
+#define GL_TEXTURE4 0x84C4
+#define GL_TEXTURE5 0x84C5
+#define GL_TEXTURE6 0x84C6
+#define GL_TEXTURE7 0x84C7
+#define GL_TEXTURE8 0x84C8
+#define GL_TEXTURE9 0x84C9
+#define GL_TEXTURE10 0x84CA
+#define GL_TEXTURE11 0x84CB
+#define GL_TEXTURE12 0x84CC
+#define GL_TEXTURE13 0x84CD
+#define GL_TEXTURE14 0x84CE
+#define GL_TEXTURE15 0x84CF
+#define GL_TEXTURE16 0x84D0
+#define GL_TEXTURE17 0x84D1
+#define GL_TEXTURE18 0x84D2
+#define GL_TEXTURE19 0x84D3
+#define GL_TEXTURE20 0x84D4
+#define GL_TEXTURE21 0x84D5
+#define GL_TEXTURE22 0x84D6
+#define GL_TEXTURE23 0x84D7
+#define GL_TEXTURE24 0x84D8
+#define GL_TEXTURE25 0x84D9
+#define GL_TEXTURE26 0x84DA
+#define GL_TEXTURE27 0x84DB
+#define GL_TEXTURE28 0x84DC
+#define GL_TEXTURE29 0x84DD
+#define GL_TEXTURE30 0x84DE
+#define GL_TEXTURE31 0x84DF
+#define GL_ACTIVE_TEXTURE 0x84E0
+
+/* TextureWrapMode */
+#define GL_REPEAT 0x2901
+#define GL_CLAMP_TO_EDGE 0x812F
+#define GL_MIRRORED_REPEAT 0x8370
+
+/* Uniform Types */
+#define GL_FLOAT_VEC2 0x8B50
+#define GL_FLOAT_VEC3 0x8B51
+#define GL_FLOAT_VEC4 0x8B52
+#define GL_INT_VEC2 0x8B53
+#define GL_INT_VEC3 0x8B54
+#define GL_INT_VEC4 0x8B55
+#define GL_BOOL 0x8B56
+#define GL_BOOL_VEC2 0x8B57
+#define GL_BOOL_VEC3 0x8B58
+#define GL_BOOL_VEC4 0x8B59
+#define GL_FLOAT_MAT2 0x8B5A
+#define GL_FLOAT_MAT3 0x8B5B
+#define GL_FLOAT_MAT4 0x8B5C
+#define GL_SAMPLER_2D 0x8B5E
+#define GL_SAMPLER_CUBE 0x8B60
+
+/* Vertex Arrays */
+#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
+#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
+#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
+#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
+#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
+#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
+#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
+
+/* Read Format */
+#define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A
+#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B
+
+/* Shader Source */
+#define GL_COMPILE_STATUS 0x8B81
+#define GL_INFO_LOG_LENGTH 0x8B84
+#define GL_SHADER_SOURCE_LENGTH 0x8B88
+#define GL_SHADER_COMPILER 0x8DFA
+
+/* Shader Binary */
+#define GL_SHADER_BINARY_FORMATS 0x8DF8
+#define GL_NUM_SHADER_BINARY_FORMATS 0x8DF9
+
+/* Shader Precision-Specified Types */
+#define GL_LOW_FLOAT 0x8DF0
+#define GL_MEDIUM_FLOAT 0x8DF1
+#define GL_HIGH_FLOAT 0x8DF2
+#define GL_LOW_INT 0x8DF3
+#define GL_MEDIUM_INT 0x8DF4
+#define GL_HIGH_INT 0x8DF5
+
+/* Framebuffer Object. */
+#define GL_FRAMEBUFFER 0x8D40
+#define GL_RENDERBUFFER 0x8D41
+
+#define GL_RGBA4 0x8056
+#define GL_RGB5_A1 0x8057
+#define GL_RGB565 0x8D62
+#define GL_DEPTH_COMPONENT16 0x81A5
+#define GL_STENCIL_INDEX 0x1901
+#define GL_STENCIL_INDEX8 0x8D48
+
+#define GL_RENDERBUFFER_WIDTH 0x8D42
+#define GL_RENDERBUFFER_HEIGHT 0x8D43
+#define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44
+#define GL_RENDERBUFFER_RED_SIZE 0x8D50
+#define GL_RENDERBUFFER_GREEN_SIZE 0x8D51
+#define GL_RENDERBUFFER_BLUE_SIZE 0x8D52
+#define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53
+#define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54
+#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
+
+#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
+#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
+
+#define GL_COLOR_ATTACHMENT0 0x8CE0
+#define GL_DEPTH_ATTACHMENT 0x8D00
+#define GL_STENCIL_ATTACHMENT 0x8D20
+
+#define GL_NONE 0
+
+#define GL_FRAMEBUFFER_COMPLETE 0x8CD5
+#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
+#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
+#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS 0x8CD9
+#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD
+
+#define GL_FRAMEBUFFER_BINDING 0x8CA6
+#define GL_RENDERBUFFER_BINDING 0x8CA7
+#define GL_MAX_RENDERBUFFER_SIZE 0x84E8
+
+#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506
+
+/*-------------------------------------------------------------------------
+ * GL core functions.
+ *-----------------------------------------------------------------------*/
+
+GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture);
+GL_APICALL void GL_APIENTRY glAttachShader (GLuint program, GLuint shader);
+GL_APICALL void GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const char* name);
+GL_APICALL void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer);
+GL_APICALL void GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer);
+GL_APICALL void GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer);
+GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture);
+GL_APICALL void GL_APIENTRY glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+GL_APICALL void GL_APIENTRY glBlendEquation ( GLenum mode );
+GL_APICALL void GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
+GL_APICALL void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
+GL_APICALL void GL_APIENTRY glBlendFuncSeparate (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+GL_APICALL void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const void* data, GLenum usage);
+GL_APICALL void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const void* data);
+GL_APICALL GLenum GL_APIENTRY glCheckFramebufferStatus (GLenum target);
+GL_APICALL void GL_APIENTRY glClear (GLbitfield mask);
+GL_APICALL void GL_APIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+GL_APICALL void GL_APIENTRY glClearDepthf (GLclampf depth);
+GL_APICALL void GL_APIENTRY glClearStencil (GLint s);
+GL_APICALL void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+GL_APICALL void GL_APIENTRY glCompileShader (GLuint shader);
+GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data);
+GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data);
+GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL GLuint GL_APIENTRY glCreateProgram (void);
+GL_APICALL GLuint GL_APIENTRY glCreateShader (GLenum type);
+GL_APICALL void GL_APIENTRY glCullFace (GLenum mode);
+GL_APICALL void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint* buffers);
+GL_APICALL void GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint* framebuffers);
+GL_APICALL void GL_APIENTRY glDeleteProgram (GLuint program);
+GL_APICALL void GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint* renderbuffers);
+GL_APICALL void GL_APIENTRY glDeleteShader (GLuint shader);
+GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint* textures);
+GL_APICALL void GL_APIENTRY glDepthFunc (GLenum func);
+GL_APICALL void GL_APIENTRY glDepthMask (GLboolean flag);
+GL_APICALL void GL_APIENTRY glDepthRangef (GLclampf zNear, GLclampf zFar);
+GL_APICALL void GL_APIENTRY glDetachShader (GLuint program, GLuint shader);
+GL_APICALL void GL_APIENTRY glDisable (GLenum cap);
+GL_APICALL void GL_APIENTRY glDisableVertexAttribArray (GLuint index);
+GL_APICALL void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
+GL_APICALL void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const void* indices);
+GL_APICALL void GL_APIENTRY glEnable (GLenum cap);
+GL_APICALL void GL_APIENTRY glEnableVertexAttribArray (GLuint index);
+GL_APICALL void GL_APIENTRY glFinish (void);
+GL_APICALL void GL_APIENTRY glFlush (void);
+GL_APICALL void GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+GL_APICALL void GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+GL_APICALL void GL_APIENTRY glFrontFace (GLenum mode);
+GL_APICALL void GL_APIENTRY glGenBuffers (GLsizei n, GLuint* buffers);
+GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target);
+GL_APICALL void GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint* framebuffers);
+GL_APICALL void GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint* renderbuffers);
+GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint* textures);
+GL_APICALL void GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name);
+GL_APICALL void GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name);
+GL_APICALL void GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
+GL_APICALL int GL_APIENTRY glGetAttribLocation (GLuint program, const char* name);
+GL_APICALL void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean* params);
+GL_APICALL void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params);
+GL_APICALL GLenum GL_APIENTRY glGetError (void);
+GL_APICALL void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat* params);
+GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params);
+GL_APICALL void GL_APIENTRY glGetIntegerv (GLenum pname, GLint* params);
+GL_APICALL void GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint* params);
+GL_APICALL void GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufsize, GLsizei* length, char* infolog);
+GL_APICALL void GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params);
+GL_APICALL void GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint* params);
+GL_APICALL void GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufsize, GLsizei* length, char* infolog);
+GL_APICALL void GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
+GL_APICALL void GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufsize, GLsizei* length, char* source);
+GL_APICALL const GLubyte* GL_APIENTRY glGetString (GLenum name);
+GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params);
+GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint* params);
+GL_APICALL void GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat* params);
+GL_APICALL void GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint* params);
+GL_APICALL int GL_APIENTRY glGetUniformLocation (GLuint program, const char* name);
+GL_APICALL void GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params);
+GL_APICALL void GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params);
+GL_APICALL void GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, void** pointer);
+GL_APICALL void GL_APIENTRY glHint (GLenum target, GLenum mode);
+GL_APICALL GLboolean GL_APIENTRY glIsBuffer (GLuint buffer);
+GL_APICALL GLboolean GL_APIENTRY glIsEnabled (GLenum cap);
+GL_APICALL GLboolean GL_APIENTRY glIsFramebuffer (GLuint framebuffer);
+GL_APICALL GLboolean GL_APIENTRY glIsProgram (GLuint program);
+GL_APICALL GLboolean GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer);
+GL_APICALL GLboolean GL_APIENTRY glIsShader (GLuint shader);
+GL_APICALL GLboolean GL_APIENTRY glIsTexture (GLuint texture);
+GL_APICALL void GL_APIENTRY glLineWidth (GLfloat width);
+GL_APICALL void GL_APIENTRY glLinkProgram (GLuint program);
+GL_APICALL void GL_APIENTRY glPixelStorei (GLenum pname, GLint param);
+GL_APICALL void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
+GL_APICALL void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels);
+GL_APICALL void GL_APIENTRY glReleaseShaderCompiler (void);
+GL_APICALL void GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glSampleCoverage (GLclampf value, GLboolean invert);
+GL_APICALL void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glShaderBinary (GLsizei n, const GLuint* shaders, GLenum binaryformat, const void* binary, GLsizei length);
+GL_APICALL void GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const char** string, const GLint* length);
+GL_APICALL void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
+GL_APICALL void GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask);
+GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask);
+GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask);
+GL_APICALL void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
+GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
+GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
+GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
+GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params);
+GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
+GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint* params);
+GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels);
+GL_APICALL void GL_APIENTRY glUniform1f (GLint location, GLfloat x);
+GL_APICALL void GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat* v);
+GL_APICALL void GL_APIENTRY glUniform1i (GLint location, GLint x);
+GL_APICALL void GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint* v);
+GL_APICALL void GL_APIENTRY glUniform2f (GLint location, GLfloat x, GLfloat y);
+GL_APICALL void GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat* v);
+GL_APICALL void GL_APIENTRY glUniform2i (GLint location, GLint x, GLint y);
+GL_APICALL void GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint* v);
+GL_APICALL void GL_APIENTRY glUniform3f (GLint location, GLfloat x, GLfloat y, GLfloat z);
+GL_APICALL void GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat* v);
+GL_APICALL void GL_APIENTRY glUniform3i (GLint location, GLint x, GLint y, GLint z);
+GL_APICALL void GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint* v);
+GL_APICALL void GL_APIENTRY glUniform4f (GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+GL_APICALL void GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat* v);
+GL_APICALL void GL_APIENTRY glUniform4i (GLint location, GLint x, GLint y, GLint z, GLint w);
+GL_APICALL void GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint* v);
+GL_APICALL void GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
+GL_APICALL void GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
+GL_APICALL void GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
+GL_APICALL void GL_APIENTRY glUseProgram (GLuint program);
+GL_APICALL void GL_APIENTRY glValidateProgram (GLuint program);
+GL_APICALL void GL_APIENTRY glVertexAttrib1f (GLuint indx, GLfloat x);
+GL_APICALL void GL_APIENTRY glVertexAttrib1fv (GLuint indx, const GLfloat* values);
+GL_APICALL void GL_APIENTRY glVertexAttrib2f (GLuint indx, GLfloat x, GLfloat y);
+GL_APICALL void GL_APIENTRY glVertexAttrib2fv (GLuint indx, const GLfloat* values);
+GL_APICALL void GL_APIENTRY glVertexAttrib3f (GLuint indx, GLfloat x, GLfloat y, GLfloat z);
+GL_APICALL void GL_APIENTRY glVertexAttrib3fv (GLuint indx, const GLfloat* values);
+GL_APICALL void GL_APIENTRY glVertexAttrib4f (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+GL_APICALL void GL_APIENTRY glVertexAttrib4fv (GLuint indx, const GLfloat* values);
+GL_APICALL void GL_APIENTRY glVertexAttribPointer (GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* ptr);
+GL_APICALL void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __gl2_h_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2ext.h b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2ext.h
new file mode 100644
index 0000000..72f1ae7
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2ext.h
@@ -0,0 +1,518 @@
+#ifndef __gl2ext_h_
+#define __gl2ext_h_
+
+/* $Revision: 8271 $ on $Date:: 2009-05-21 09:33:40 -0700 #$ */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * This document is licensed under the SGI Free Software B License Version
+ * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
+ */
+
+#ifndef GL_APIENTRYP
+# define GL_APIENTRYP GL_APIENTRY*
+#endif
+
+/*------------------------------------------------------------------------*
+ * OES extension tokens
+ *------------------------------------------------------------------------*/
+
+/* GL_OES_compressed_ETC1_RGB8_texture */
+#ifndef GL_OES_compressed_ETC1_RGB8_texture
+#define GL_ETC1_RGB8_OES 0x8D64
+#endif
+
+/* GL_OES_compressed_paletted_texture */
+#ifndef GL_OES_compressed_paletted_texture
+#define GL_PALETTE4_RGB8_OES 0x8B90
+#define GL_PALETTE4_RGBA8_OES 0x8B91
+#define GL_PALETTE4_R5_G6_B5_OES 0x8B92
+#define GL_PALETTE4_RGBA4_OES 0x8B93
+#define GL_PALETTE4_RGB5_A1_OES 0x8B94
+#define GL_PALETTE8_RGB8_OES 0x8B95
+#define GL_PALETTE8_RGBA8_OES 0x8B96
+#define GL_PALETTE8_R5_G6_B5_OES 0x8B97
+#define GL_PALETTE8_RGBA4_OES 0x8B98
+#define GL_PALETTE8_RGB5_A1_OES 0x8B99
+#endif
+
+/* GL_OES_depth24 */
+#ifndef GL_OES_depth24
+#define GL_DEPTH_COMPONENT24_OES 0x81A6
+#endif
+
+/* GL_OES_depth32 */
+#ifndef GL_OES_depth32
+#define GL_DEPTH_COMPONENT32_OES 0x81A7
+#endif
+
+/* GL_OES_depth_texture */
+/* No new tokens introduced by this extension. */
+
+/* GL_OES_EGL_image */
+#ifndef GL_OES_EGL_image
+typedef void* GLeglImageOES;
+#endif
+
+/* GL_OES_get_program_binary */
+#ifndef GL_OES_get_program_binary
+#define GL_PROGRAM_BINARY_LENGTH_OES 0x8741
+#define GL_NUM_PROGRAM_BINARY_FORMATS_OES 0x87FE
+#define GL_PROGRAM_BINARY_FORMATS_OES 0x87FF
+#endif
+
+/* GL_OES_mapbuffer */
+#ifndef GL_OES_mapbuffer
+#define GL_WRITE_ONLY_OES 0x88B9
+#define GL_BUFFER_ACCESS_OES 0x88BB
+#define GL_BUFFER_MAPPED_OES 0x88BC
+#define GL_BUFFER_MAP_POINTER_OES 0x88BD
+#endif
+
+/* GL_OES_packed_depth_stencil */
+#ifndef GL_OES_packed_depth_stencil
+#define GL_DEPTH_STENCIL_OES 0x84F9
+#define GL_UNSIGNED_INT_24_8_OES 0x84FA
+#define GL_DEPTH24_STENCIL8_OES 0x88F0
+#endif
+
+/* GL_OES_rgb8_rgba8 */
+#ifndef GL_OES_rgb8_rgba8
+#define GL_RGB8_OES 0x8051
+#define GL_RGBA8_OES 0x8058
+#endif
+
+/* GL_OES_standard_derivatives */
+#ifndef GL_OES_standard_derivatives
+#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B
+#endif
+
+/* GL_OES_stencil1 */
+#ifndef GL_OES_stencil1
+#define GL_STENCIL_INDEX1_OES 0x8D46
+#endif
+
+/* GL_OES_stencil4 */
+#ifndef GL_OES_stencil4
+#define GL_STENCIL_INDEX4_OES 0x8D47
+#endif
+
+/* GL_OES_texture3D */
+#ifndef GL_OES_texture3D
+#define GL_TEXTURE_WRAP_R_OES 0x8072
+#define GL_TEXTURE_3D_OES 0x806F
+#define GL_TEXTURE_BINDING_3D_OES 0x806A
+#define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073
+#define GL_SAMPLER_3D_OES 0x8B5F
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4
+#endif
+
+/* GL_OES_texture_half_float */
+#ifndef GL_OES_texture_half_float
+#define GL_HALF_FLOAT_OES 0x8D61
+#endif
+
+/* GL_OES_vertex_half_float */
+/* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */
+
+/* GL_OES_vertex_type_10_10_10_2 */
+#ifndef GL_OES_vertex_type_10_10_10_2
+#define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6
+#define GL_INT_10_10_10_2_OES 0x8DF7
+#endif
+
+/*------------------------------------------------------------------------*
+ * AMD extension tokens
+ *------------------------------------------------------------------------*/
+
+/* GL_AMD_compressed_3DC_texture */
+#ifndef GL_AMD_compressed_3DC_texture
+#define GL_3DC_X_AMD 0x87F9
+#define GL_3DC_XY_AMD 0x87FA
+#endif
+
+/* GL_AMD_compressed_ATC_texture */
+#ifndef GL_AMD_compressed_ATC_texture
+#define GL_ATC_RGB_AMD 0x8C92
+#define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93
+#define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE
+#endif
+
+/* GL_AMD_program_binary_Z400 */
+#ifndef GL_AMD_program_binary_Z400
+#define GL_Z400_BINARY_AMD 0x8740
+#endif
+
+/* GL_AMD_performance_monitor */
+#ifndef GL_AMD_performance_monitor
+#define GL_COUNTER_TYPE_AMD 0x8BC0
+#define GL_COUNTER_RANGE_AMD 0x8BC1
+#define GL_UNSIGNED_INT64_AMD 0x8BC2
+#define GL_PERCENTAGE_AMD 0x8BC3
+#define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4
+#define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5
+#define GL_PERFMON_RESULT_AMD 0x8BC6
+#endif
+
+/*------------------------------------------------------------------------*
+ * EXT extension tokens
+ *------------------------------------------------------------------------*/
+
+/* GL_EXT_texture_filter_anisotropic */
+#ifndef GL_EXT_texture_filter_anisotropic
+#define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
+#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
+#endif
+
+/* GL_EXT_texture_type_2_10_10_10_REV */
+#ifndef GL_EXT_texture_type_2_10_10_10_REV
+#define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368
+#endif
+
+/* GL_EXT_texture_format_BGRA8888 */
+#ifndef GL_EXT_texture_format_BGRA8888
+#define GL_BGRA 0x80E1
+#endif
+
+/*------------------------------------------------------------------------*
+ * IMG extension tokens
+ *------------------------------------------------------------------------*/
+
+/* GL_IMG_read_format */
+#ifndef GL_IMG_read_format
+#define GL_BGRA 0x80E1
+#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365
+#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
+#endif
+
+/* GL_IMG_texture_compression_pvrtc */
+#ifndef GL_IMG_texture_compression_pvrtc
+#define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00
+#define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01
+#define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02
+#define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03
+#endif
+
+/*------------------------------------------------------------------------*
+ * NV extension tokens
+ *------------------------------------------------------------------------*/
+
+/* GL_NV_fence */
+#ifndef GL_NV_fence
+#define GL_ALL_COMPLETED_NV 0x84F2
+#define GL_FENCE_STATUS_NV 0x84F3
+#define GL_FENCE_CONDITION_NV 0x84F4
+#endif
+
+/*------------------------------------------------------------------------*
+ * QCOM extension tokens
+ *------------------------------------------------------------------------*/
+
+/* GL_QCOM_driver_control */
+/* No new tokens introduced by this extension. */
+
+/* GL_QCOM_perfmon_global_mode */
+#ifndef GL_QCOM_perfmon_global_mode
+#define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0
+#endif
+
+/*------------------------------------------------------------------------*
+ * End of extension tokens, start of corresponding extension functions
+ *------------------------------------------------------------------------*/
+
+/*------------------------------------------------------------------------*
+ * OES extension functions
+ *------------------------------------------------------------------------*/
+
+/* GL_OES_compressed_ETC1_RGB8_texture */
+#ifndef GL_OES_compressed_ETC1_RGB8_texture
+#define GL_OES_compressed_ETC1_RGB8_texture 1
+#endif
+
+/* GL_OES_compressed_paletted_texture */
+#ifndef GL_OES_compressed_paletted_texture
+#define GL_OES_compressed_paletted_texture 1
+#endif
+
+/* GL_OES_EGL_image */
+#ifndef GL_OES_EGL_image
+#define GL_OES_EGL_image 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
+GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
+#endif
+typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
+typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
+#endif
+
+/* GL_OES_depth24 */
+#ifndef GL_OES_depth24
+#define GL_OES_depth24 1
+#endif
+
+/* GL_OES_depth32 */
+#ifndef GL_OES_depth32
+#define GL_OES_depth32 1
+#endif
+
+/* GL_OES_depth_texture */
+#ifndef GL_OES_depth_texture
+#define GL_OES_depth_texture 1
+#endif
+
+/* GL_OES_element_index_uint */
+#ifndef GL_OES_element_index_uint
+#define GL_OES_element_index_uint 1
+#endif
+
+/* GL_OES_fbo_render_mipmap */
+#ifndef GL_OES_fbo_render_mipmap
+#define GL_OES_fbo_render_mipmap 1
+#endif
+
+/* GL_OES_fragment_precision_high */
+#ifndef GL_OES_fragment_precision_high
+#define GL_OES_fragment_precision_high 1
+#endif
+
+/* GL_OES_get_program_binary */
+#ifndef GL_OES_get_program_binary
+#define GL_OES_get_program_binary 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
+GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const void *binary, GLint length);
+#endif
+typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
+typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const void *binary, GLint length);
+#endif
+
+/* GL_OES_mapbuffer */
+#ifndef GL_OES_mapbuffer
+#define GL_OES_mapbuffer 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
+GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
+GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, void** params);
+#endif
+typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
+typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
+typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, void** params);
+#endif
+
+/* GL_OES_packed_depth_stencil */
+#ifndef GL_OES_packed_depth_stencil
+#define GL_OES_packed_depth_stencil 1
+#endif
+
+/* GL_OES_rgb8_rgba8 */
+#ifndef GL_OES_rgb8_rgba8
+#define GL_OES_rgb8_rgba8 1
+#endif
+
+/* GL_OES_standard_derivatives */
+#ifndef GL_OES_standard_derivatives
+#define GL_OES_standard_derivatives 1
+#endif
+
+/* GL_OES_stencil1 */
+#ifndef GL_OES_stencil1
+#define GL_OES_stencil1 1
+#endif
+
+/* GL_OES_stencil4 */
+#ifndef GL_OES_stencil4
+#define GL_OES_stencil4 1
+#endif
+
+/* GL_OES_texture_3D */
+#ifndef GL_OES_texture_3D
+#define GL_OES_texture_3D 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void GL_APIENTRY glTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels);
+GL_APICALL void GL_APIENTRY glTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels);
+GL_APICALL void GL_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glCompressedTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data);
+GL_APICALL void GL_APIENTRY glCompressedTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data);
+GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+#endif
+typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
+typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels);
+typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data);
+typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data);
+typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+#endif
+
+/* GL_OES_texture_float_linear */
+#ifndef GL_OES_texture_float_linear
+#define GL_OES_texture_float_linear 1
+#endif
+
+/* GL_OES_texture_half_float_linear */
+#ifndef GL_OES_texture_half_float_linear
+#define GL_OES_texture_half_float_linear 1
+#endif
+
+/* GL_OES_texture_float */
+#ifndef GL_OES_texture_float
+#define GL_OES_texture_float 1
+#endif
+
+/* GL_OES_texture_half_float */
+#ifndef GL_OES_texture_half_float
+#define GL_OES_texture_half_float 1
+#endif
+
+/* GL_OES_texture_npot */
+#ifndef GL_OES_texture_npot
+#define GL_OES_texture_npot 1
+#endif
+
+/* GL_OES_vertex_half_float */
+#ifndef GL_OES_vertex_half_float
+#define GL_OES_vertex_half_float 1
+#endif
+
+/* GL_OES_vertex_type_10_10_10_2 */
+#ifndef GL_OES_vertex_type_10_10_10_2
+#define GL_OES_vertex_type_10_10_10_2 1
+#endif
+
+/*------------------------------------------------------------------------*
+ * AMD extension functions
+ *------------------------------------------------------------------------*/
+
+/* GL_AMD_compressed_3DC_texture */
+#ifndef GL_AMD_compressed_3DC_texture
+#define GL_AMD_compressed_3DC_texture 1
+#endif
+
+/* GL_AMD_compressed_ATC_texture */
+#ifndef GL_AMD_compressed_ATC_texture
+#define GL_AMD_compressed_ATC_texture 1
+#endif
+
+/* GL_AMD_program_binary_Z400 */
+#ifndef GL_AMD_program_binary_Z400
+#define GL_AMD_program_binary_Z400 1
+#endif
+
+/* AMD_performance_monitor */
+#ifndef GL_AMD_performance_monitor
+#define GL_AMD_performance_monitor 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
+GL_APICALL void GL_APIENTRY glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
+GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, char *groupString);
+GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, char *counterString);
+GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, void *data);
+GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors);
+GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors);
+GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
+GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor);
+GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor);
+GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
+#endif
+typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
+typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
+typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, char *groupString);
+typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, char *counterString);
+typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, void *data);
+typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
+typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
+typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
+typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor);
+typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor);
+typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
+#endif
+
+/*------------------------------------------------------------------------*
+ * EXT extension functions
+ *------------------------------------------------------------------------*/
+
+/* GL_EXT_texture_filter_anisotropic */
+#ifndef GL_EXT_texture_filter_anisotropic
+#define GL_EXT_texture_filter_anisotropic 1
+#endif
+
+/* GL_EXT_texture_type_2_10_10_10_REV */
+#ifndef GL_EXT_texture_type_2_10_10_10_REV
+#define GL_EXT_texture_type_2_10_10_10_REV 1
+#endif
+
+/* GL_EXT_texture_format_BGRA8888 */
+#ifndef GL_EXT_texture_format_BGRA8888
+#define GL_EXT_texture_format_BGRA8888 1
+#endif
+
+/*------------------------------------------------------------------------*
+ * IMG extension functions
+ *------------------------------------------------------------------------*/
+
+/* GL_IMG_read_format */
+#ifndef GL_IMG_read_format
+#define GL_IMG_read_format 1
+#endif
+
+/* GL_IMG_texture_compression_pvrtc */
+#ifndef GL_IMG_texture_compression_pvrtc
+#define GL_IMG_texture_compression_pvrtc 1
+#endif
+
+/*------------------------------------------------------------------------*
+ * NV extension functions
+ *------------------------------------------------------------------------*/
+
+/* GL_NV_fence */
+#ifndef GL_NV_fence
+#define GL_NV_fence 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei n, const GLuint *fences);
+GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei n, GLuint *fences);
+GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint fence);
+GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint fence);
+GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint fence, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint fence);
+GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint fence, GLenum condition);
+#endif
+typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
+typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
+typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
+typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
+typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
+typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
+typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
+#endif
+
+/*------------------------------------------------------------------------*
+ * QCOM extension functions
+ *------------------------------------------------------------------------*/
+
+/* GL_QCOM_driver_control */
+#ifndef GL_QCOM_driver_control
+#define GL_QCOM_driver_control 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
+GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, char *driverControlString);
+GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
+GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
+#endif
+typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
+typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, char *driverControlString);
+typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
+typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
+#endif
+
+/* GL_QCOM_perfmon_global_mode */
+#ifndef GL_QCOM_perfmon_global_mode
+#define GL_QCOM_perfmon_global_mode 1
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __gl2ext_h_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2platform.h b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2platform.h
new file mode 100644
index 0000000..3e9036c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2platform.h
@@ -0,0 +1,29 @@
+#ifndef __gl2platform_h_
+#define __gl2platform_h_
+
+/* $Revision: 7173 $ on $Date:: 2009-01-09 11:18:21 -0800 #$ */
+
+/*
+ * This document is licensed under the SGI Free Software B License Version
+ * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
+ */
+
+/* Platform-specific types and definitions for OpenGL ES 2.X gl2.h
+ * Last modified on 2008/12/19
+ *
+ * Adopters may modify khrplatform.h and this file to suit their platform.
+ * You are encouraged to submit all modifications to the Khronos group so that
+ * they can be included in future versions of this file. Please submit changes
+ * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
+ * by filing a bug against product "OpenGL-ES" component "Registry".
+ */
+
+#include <KHR/khrplatform.h>
+
+#ifndef GL_APICALL
+#define GL_APICALL KHRONOS_APICALL
+#endif
+
+#define GL_APIENTRY KHRONOS_APIENTRY
+
+#endif /* __gl2platform_h_ */
diff --git a/ndk/build/platforms/android-4/common/include/KHR/khrplatform.h b/ndk/build/platforms/android-5/arch-arm/usr/include/KHR/khrplatform.h
similarity index 100%
copy from ndk/build/platforms/android-4/common/include/KHR/khrplatform.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/KHR/khrplatform.h
diff --git a/ndk/build/platforms/android-3/common/include/alloca.h b/ndk/build/platforms/android-5/arch-arm/usr/include/alloca.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/alloca.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/alloca.h
diff --git a/ndk/build/platforms/android-3/common/include/android/log.h b/ndk/build/platforms/android-5/arch-arm/usr/include/android/log.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/android/log.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/android/log.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/arm/fenv.h b/ndk/build/platforms/android-5/arch-arm/usr/include/arm/fenv.h
new file mode 100644
index 0000000..e7a8860
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/arm/fenv.h
@@ -0,0 +1,217 @@
+/*-
+ * Copyright (c) 2004-2005 David Schultz <das@FreeBSD.ORG>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * $FreeBSD: src/lib/msun/arm/fenv.h,v 1.5 2005/03/16 19:03:45 das Exp $
+ */
+
+#ifndef _FENV_H_
+#define _FENV_H_
+
+#include <sys/_types.h>
+
+typedef __uint32_t fenv_t;
+typedef __uint32_t fexcept_t;
+
+/* Exception flags */
+#define FE_INVALID 0x0001
+#define FE_DIVBYZERO 0x0002
+#define FE_OVERFLOW 0x0004
+#define FE_UNDERFLOW 0x0008
+#define FE_INEXACT 0x0010
+#define FE_ALL_EXCEPT (FE_DIVBYZERO | FE_INEXACT | \
+ FE_INVALID | FE_OVERFLOW | FE_UNDERFLOW)
+
+/* Rounding modes */
+#define FE_TONEAREST 0x0000
+#define FE_TOWARDZERO 0x0001
+#define FE_UPWARD 0x0002
+#define FE_DOWNWARD 0x0003
+#define _ROUND_MASK (FE_TONEAREST | FE_DOWNWARD | \
+ FE_UPWARD | FE_TOWARDZERO)
+__BEGIN_DECLS
+
+/* Default floating-point environment */
+extern const fenv_t __fe_dfl_env;
+#define FE_DFL_ENV (&__fe_dfl_env)
+
+/* We need to be able to map status flag positions to mask flag positions */
+#define _FPUSW_SHIFT 16
+#define _ENABLE_MASK (FE_ALL_EXCEPT << _FPUSW_SHIFT)
+
+#ifdef ARM_HARD_FLOAT
+#define __rfs(__fpsr) __asm __volatile("rfs %0" : "=r" (*(__fpsr)))
+#define __wfs(__fpsr) __asm __volatile("wfs %0" : : "r" (__fpsr))
+#else
+#define __rfs(__fpsr)
+#define __wfs(__fpsr)
+#endif
+
+static __inline int
+feclearexcept(int __excepts)
+{
+ fexcept_t __fpsr;
+
+ __rfs(&__fpsr);
+ __fpsr &= ~__excepts;
+ __wfs(__fpsr);
+ return (0);
+}
+
+static __inline int
+fegetexceptflag(fexcept_t *__flagp, int __excepts)
+{
+ fexcept_t __fpsr;
+
+ __rfs(&__fpsr);
+ *__flagp = __fpsr & __excepts;
+ return (0);
+}
+
+static __inline int
+fesetexceptflag(const fexcept_t *__flagp, int __excepts)
+{
+ fexcept_t __fpsr;
+
+ __rfs(&__fpsr);
+ __fpsr &= ~__excepts;
+ __fpsr |= *__flagp & __excepts;
+ __wfs(__fpsr);
+ return (0);
+}
+
+static __inline int
+feraiseexcept(int __excepts)
+{
+ fexcept_t __ex = __excepts;
+
+ fesetexceptflag(&__ex, __excepts); /* XXX */
+ return (0);
+}
+
+static __inline int
+fetestexcept(int __excepts)
+{
+ fexcept_t __fpsr;
+
+ __rfs(&__fpsr);
+ return (__fpsr & __excepts);
+}
+
+static __inline int
+fegetround(void)
+{
+
+ /*
+ * Apparently, the rounding mode is specified as part of the
+ * instruction format on ARM, so the dynamic rounding mode is
+ * indeterminate. Some FPUs may differ.
+ */
+ return (-1);
+}
+
+static __inline int
+fesetround(int __round)
+{
+
+ return (-1);
+}
+
+static __inline int
+fegetenv(fenv_t *__envp)
+{
+
+ __rfs(__envp);
+ return (0);
+}
+
+static __inline int
+feholdexcept(fenv_t *__envp)
+{
+ fenv_t __env;
+
+ __rfs(&__env);
+ *__envp = __env;
+ __env &= ~(FE_ALL_EXCEPT | _ENABLE_MASK);
+ __wfs(__env);
+ return (0);
+}
+
+static __inline int
+fesetenv(const fenv_t *__envp)
+{
+
+ __wfs(*__envp);
+ return (0);
+}
+
+static __inline int
+feupdateenv(const fenv_t *__envp)
+{
+ fexcept_t __fpsr;
+
+ __rfs(&__fpsr);
+ __wfs(*__envp);
+ feraiseexcept(__fpsr & FE_ALL_EXCEPT);
+ return (0);
+}
+
+#if __BSD_VISIBLE
+
+static __inline int
+feenableexcept(int __mask)
+{
+ fenv_t __old_fpsr, __new_fpsr;
+
+ __rfs(&__old_fpsr);
+ __new_fpsr = __old_fpsr | (__mask & FE_ALL_EXCEPT) << _FPUSW_SHIFT;
+ __wfs(__new_fpsr);
+ return ((__old_fpsr >> _FPUSW_SHIFT) & FE_ALL_EXCEPT);
+}
+
+static __inline int
+fedisableexcept(int __mask)
+{
+ fenv_t __old_fpsr, __new_fpsr;
+
+ __rfs(&__old_fpsr);
+ __new_fpsr = __old_fpsr & ~((__mask & FE_ALL_EXCEPT) << _FPUSW_SHIFT);
+ __wfs(__new_fpsr);
+ return ((__old_fpsr >> _FPUSW_SHIFT) & FE_ALL_EXCEPT);
+}
+
+static __inline int
+fegetexcept(void)
+{
+ fenv_t __fpsr;
+
+ __rfs(&__fpsr);
+ return ((__fpsr & _ENABLE_MASK) >> _FPUSW_SHIFT);
+}
+
+#endif /* __BSD_VISIBLE */
+
+__END_DECLS
+
+#endif /* !_FENV_H_ */
diff --git a/ndk/build/platforms/android-3/common/include/arpa/inet.h b/ndk/build/platforms/android-5/arch-arm/usr/include/arpa/inet.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/arpa/inet.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/arpa/inet.h
diff --git a/ndk/build/platforms/android-3/common/include/arpa/nameser.h b/ndk/build/platforms/android-5/arch-arm/usr/include/arpa/nameser.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/arpa/nameser.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/arpa/nameser.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/4level-fixup.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/4level-fixup.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/4level-fixup.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/4level-fixup.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/audit_dir_write.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/audit_dir_write.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/audit_dir_write.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/audit_dir_write.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/__ffs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/__ffs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/__ffs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/__ffs.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/atomic.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/atomic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/atomic.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/atomic.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/ffz.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/ffz.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/ffz.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/ffz.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/find.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/find.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/find.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/find.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/fls.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/fls.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls64.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/fls64.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls64.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/fls64.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/le.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/le.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/le.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/le.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/non-atomic.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/non-atomic.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bug.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bug.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bug.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bug.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/cputime.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/cputime.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/cputime.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/cputime.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/emergency-restart.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/emergency-restart.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/emergency-restart.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/emergency-restart.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/errno-base.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/errno-base.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/errno-base.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/errno-base.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/errno.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/errno.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/errno.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/errno.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/fcntl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/fcntl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/fcntl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/fcntl.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/futex.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/futex.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/futex.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/futex.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/ioctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/ioctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/ioctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/ioctl.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/ipc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/ipc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/ipc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/ipc.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/local.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/local.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/local.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/local.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/memory_model.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/memory_model.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/memory_model.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/memory_model.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/mman.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/mman.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/mman.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/mman.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/mutex-xchg.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/mutex-xchg.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/mutex-xchg.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/mutex-xchg.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/percpu.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/percpu.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/percpu.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/percpu.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/pgtable-nopud.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/pgtable-nopud.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/pgtable-nopud.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/pgtable-nopud.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/pgtable.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/pgtable.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/pgtable.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/pgtable.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/poll.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/poll.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/poll.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/poll.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/resource.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/resource.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/resource.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/resource.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/sections.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/sections.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/sections.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/sections.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/siginfo.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/siginfo.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/siginfo.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/siginfo.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/signal.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/signal.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/signal.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/signal.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/tlb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/tlb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/tlb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/tlb.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/topology.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/topology.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/topology.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/topology.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/xor.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/xor.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/xor.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/xor.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/a.out.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/a.out.h
new file mode 100644
index 0000000..e8f17dc
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/a.out.h
@@ -0,0 +1,42 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARM_A_OUT_H__
+#define __ARM_A_OUT_H__
+
+#include <linux/personality.h>
+#include <asm/types.h>
+
+struct exec
+{
+ __u32 a_info;
+ __u32 a_text;
+ __u32 a_data;
+ __u32 a_bss;
+ __u32 a_syms;
+ __u32 a_entry;
+ __u32 a_trsize;
+ __u32 a_drsize;
+};
+
+#define N_TXTADDR(a) (0x00008000)
+
+#define N_TRSIZE(a) ((a).a_trsize)
+#define N_DRSIZE(a) ((a).a_drsize)
+#define N_SYMSIZE(a) ((a).a_syms)
+
+#define M_ARM 103
+
+#ifndef LIBRARY_START_TEXT
+#define LIBRARY_START_TEXT (0x00c00000)
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/board-perseus2.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/board-perseus2.h
new file mode 100644
index 0000000..c6c5413
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/board-perseus2.h
@@ -0,0 +1,27 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_PERSEUS2_H
+#define __ASM_ARCH_OMAP_PERSEUS2_H
+
+#include <asm/arch/fpga.h>
+
+#ifndef OMAP_SDRAM_DEVICE
+#define OMAP_SDRAM_DEVICE D256M_1X16_4B
+#endif
+
+#define MAXIRQNUM IH_BOARD_BASE
+#define MAXFIQNUM MAXIRQNUM
+#define MAXSWINUM MAXIRQNUM
+
+#define NR_IRQS (MAXIRQNUM + 1)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/board.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/board.h
new file mode 100644
index 0000000..a7a4c66
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/board.h
@@ -0,0 +1,163 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _OMAP_BOARD_H
+#define _OMAP_BOARD_H
+
+#include <linux/types.h>
+
+#include <asm/arch/gpio-switch.h>
+
+#define OMAP_TAG_CLOCK 0x4f01
+#define OMAP_TAG_MMC 0x4f02
+#define OMAP_TAG_SERIAL_CONSOLE 0x4f03
+#define OMAP_TAG_USB 0x4f04
+#define OMAP_TAG_LCD 0x4f05
+#define OMAP_TAG_GPIO_SWITCH 0x4f06
+#define OMAP_TAG_UART 0x4f07
+#define OMAP_TAG_FBMEM 0x4f08
+#define OMAP_TAG_STI_CONSOLE 0x4f09
+#define OMAP_TAG_CAMERA_SENSOR 0x4f0a
+#define OMAP_TAG_BT 0x4f0b
+
+#define OMAP_TAG_BOOT_REASON 0x4f80
+#define OMAP_TAG_FLASH_PART 0x4f81
+#define OMAP_TAG_VERSION_STR 0x4f82
+
+struct omap_clock_config {
+
+ u8 system_clock_type;
+};
+
+struct omap_mmc_conf {
+ unsigned enabled:1;
+
+ unsigned nomux:1;
+
+ unsigned cover:1;
+
+ unsigned wire4:1;
+ s16 power_pin;
+ s16 switch_pin;
+ s16 wp_pin;
+};
+
+struct omap_mmc_config {
+ struct omap_mmc_conf mmc[2];
+};
+
+struct omap_serial_console_config {
+ u8 console_uart;
+ u32 console_speed;
+};
+
+struct omap_sti_console_config {
+ unsigned enable:1;
+ u8 channel;
+};
+
+struct omap_camera_sensor_config {
+ u16 reset_gpio;
+ int (*power_on)(void * data);
+ int (*power_off)(void * data);
+};
+
+struct omap_usb_config {
+
+ unsigned register_host:1;
+ unsigned register_dev:1;
+ u8 otg;
+
+ u8 hmc_mode;
+
+ u8 rwc;
+
+ u8 pins[3];
+};
+
+struct omap_lcd_config {
+ char panel_name[16];
+ char ctrl_name[16];
+ s16 nreset_gpio;
+ u8 data_lines;
+};
+
+struct device;
+struct fb_info;
+struct omap_backlight_config {
+ int default_intensity;
+ int (*set_power)(struct device *dev, int state);
+ int (*check_fb)(struct fb_info *fb);
+};
+
+struct omap_fbmem_config {
+ u32 start;
+ u32 size;
+};
+
+struct omap_pwm_led_platform_data {
+ const char *name;
+ int intensity_timer;
+ int blink_timer;
+ void (*set_power)(struct omap_pwm_led_platform_data *self, int on_off);
+};
+
+struct omap_gpio_switch_config {
+ char name[12];
+ u16 gpio;
+ int flags:4;
+ int type:4;
+ int key_code:24;
+};
+
+struct omap_uart_config {
+
+ unsigned int enabled_uarts;
+};
+
+struct omap_flash_part_config {
+ char part_table[0];
+};
+
+struct omap_boot_reason_config {
+ char reason_str[12];
+};
+
+struct omap_version_config {
+ char component[12];
+ char version[12];
+};
+
+struct omap_board_config_entry {
+ u16 tag;
+ u16 len;
+ u8 data[0];
+};
+
+struct omap_board_config_kernel {
+ u16 tag;
+ const void *data;
+};
+
+struct omap_bluetooth_config {
+ u8 chip_type;
+ u8 bt_uart;
+ u8 bd_addr[6];
+ u8 bt_sysclk;
+ int bt_wakeup_gpio;
+ int host_wakeup_gpio;
+ int reset_gpio;
+};
+
+#define omap_get_config(tag, type) ((const type *) __omap_get_config((tag), sizeof(type), 0))
+#define omap_get_nr_config(tag, type, nr) ((const type *) __omap_get_config((tag), sizeof(type), (nr)))
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/cpu.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/cpu.h
new file mode 100644
index 0000000..fa7a408
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/cpu.h
@@ -0,0 +1,57 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_CPU_H
+#define __ASM_ARCH_OMAP_CPU_H
+
+#define omap2_cpu_rev() ((system_rev >> 8) & 0x0f)
+
+#undef MULTI_OMAP1
+#undef MULTI_OMAP2
+#undef OMAP_NAME
+
+#define GET_OMAP_CLASS (system_rev & 0xff)
+
+#define IS_OMAP_CLASS(class, id) static inline int is_omap ##class (void) { return (GET_OMAP_CLASS == (id)) ? 1 : 0; }
+
+#define GET_OMAP_SUBCLASS ((system_rev >> 20) & 0x0fff)
+
+#define IS_OMAP_SUBCLASS(subclass, id) static inline int is_omap ##subclass (void) { return (GET_OMAP_SUBCLASS == (id)) ? 1 : 0; }
+
+#define cpu_is_omap7xx() 0
+#define cpu_is_omap15xx() 0
+#define cpu_is_omap16xx() 0
+#define cpu_is_omap24xx() 0
+#define cpu_is_omap242x() 0
+#define cpu_is_omap243x() 0
+#ifdef MULTI_OMAP1
+#else
+#endif
+#define GET_OMAP_TYPE ((system_rev >> 16) & 0xffff)
+#define IS_OMAP_TYPE(type, id) static inline int is_omap ##type (void) { return (GET_OMAP_TYPE == (id)) ? 1 : 0; }
+#define cpu_is_omap310() 0
+#define cpu_is_omap730() 0
+#define cpu_is_omap1510() 0
+#define cpu_is_omap1610() 0
+#define cpu_is_omap5912() 0
+#define cpu_is_omap1611() 0
+#define cpu_is_omap1621() 0
+#define cpu_is_omap1710() 0
+#define cpu_is_omap2420() 0
+#define cpu_is_omap2422() 0
+#define cpu_is_omap2423() 0
+#define cpu_is_omap2430() 0
+#ifdef MULTI_OMAP1
+#else
+#endif
+#define cpu_class_is_omap1() (cpu_is_omap730() || cpu_is_omap15xx() || cpu_is_omap16xx())
+#define cpu_class_is_omap2() cpu_is_omap24xx()
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/dma.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/dma.h
new file mode 100644
index 0000000..5e5be76
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/dma.h
@@ -0,0 +1,318 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_DMA_H
+#define __ASM_ARCH_DMA_H
+
+#define OMAP_DMA_BASE (0xfffed800)
+#define OMAP_DMA_GCR (OMAP_DMA_BASE + 0x400)
+#define OMAP_DMA_GSCR (OMAP_DMA_BASE + 0x404)
+#define OMAP_DMA_GRST (OMAP_DMA_BASE + 0x408)
+#define OMAP_DMA_HW_ID (OMAP_DMA_BASE + 0x442)
+#define OMAP_DMA_PCH2_ID (OMAP_DMA_BASE + 0x444)
+#define OMAP_DMA_PCH0_ID (OMAP_DMA_BASE + 0x446)
+#define OMAP_DMA_PCH1_ID (OMAP_DMA_BASE + 0x448)
+#define OMAP_DMA_PCHG_ID (OMAP_DMA_BASE + 0x44a)
+#define OMAP_DMA_PCHD_ID (OMAP_DMA_BASE + 0x44c)
+#define OMAP_DMA_CAPS_0_U (OMAP_DMA_BASE + 0x44e)
+#define OMAP_DMA_CAPS_0_L (OMAP_DMA_BASE + 0x450)
+#define OMAP_DMA_CAPS_1_U (OMAP_DMA_BASE + 0x452)
+#define OMAP_DMA_CAPS_1_L (OMAP_DMA_BASE + 0x454)
+#define OMAP_DMA_CAPS_2 (OMAP_DMA_BASE + 0x456)
+#define OMAP_DMA_CAPS_3 (OMAP_DMA_BASE + 0x458)
+#define OMAP_DMA_CAPS_4 (OMAP_DMA_BASE + 0x45a)
+#define OMAP_DMA_PCH2_SR (OMAP_DMA_BASE + 0x460)
+#define OMAP_DMA_PCH0_SR (OMAP_DMA_BASE + 0x480)
+#define OMAP_DMA_PCH1_SR (OMAP_DMA_BASE + 0x482)
+#define OMAP_DMA_PCHD_SR (OMAP_DMA_BASE + 0x4c0)
+
+#define OMAP24XX_DMA_BASE (L4_24XX_BASE + 0x56000)
+#define OMAP_DMA4_REVISION (OMAP24XX_DMA_BASE + 0x00)
+#define OMAP_DMA4_GCR_REG (OMAP24XX_DMA_BASE + 0x78)
+#define OMAP_DMA4_IRQSTATUS_L0 (OMAP24XX_DMA_BASE + 0x08)
+#define OMAP_DMA4_IRQSTATUS_L1 (OMAP24XX_DMA_BASE + 0x0c)
+#define OMAP_DMA4_IRQSTATUS_L2 (OMAP24XX_DMA_BASE + 0x10)
+#define OMAP_DMA4_IRQSTATUS_L3 (OMAP24XX_DMA_BASE + 0x14)
+#define OMAP_DMA4_IRQENABLE_L0 (OMAP24XX_DMA_BASE + 0x18)
+#define OMAP_DMA4_IRQENABLE_L1 (OMAP24XX_DMA_BASE + 0x1c)
+#define OMAP_DMA4_IRQENABLE_L2 (OMAP24XX_DMA_BASE + 0x20)
+#define OMAP_DMA4_IRQENABLE_L3 (OMAP24XX_DMA_BASE + 0x24)
+#define OMAP_DMA4_SYSSTATUS (OMAP24XX_DMA_BASE + 0x28)
+#define OMAP_DMA4_CAPS_0 (OMAP24XX_DMA_BASE + 0x64)
+#define OMAP_DMA4_CAPS_2 (OMAP24XX_DMA_BASE + 0x6c)
+#define OMAP_DMA4_CAPS_3 (OMAP24XX_DMA_BASE + 0x70)
+#define OMAP_DMA4_CAPS_4 (OMAP24XX_DMA_BASE + 0x74)
+
+#define OMAP_LOGICAL_DMA_CH_COUNT 32
+
+#define OMAP_DMA_CCR_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x80)
+#define OMAP_DMA_CLNK_CTRL_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x84)
+#define OMAP_DMA_CICR_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x88)
+#define OMAP_DMA_CSR_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x8c)
+#define OMAP_DMA_CSDP_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x90)
+#define OMAP_DMA_CEN_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x94)
+#define OMAP_DMA_CFN_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x98)
+#define OMAP_DMA_CSEI_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xa4)
+#define OMAP_DMA_CSFI_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xa8)
+#define OMAP_DMA_CDEI_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xac)
+#define OMAP_DMA_CDFI_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xb0)
+#define OMAP_DMA_CSAC_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xb4)
+#define OMAP_DMA_CDAC_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xb8)
+
+#define OMAP1_DMA_CSSA_L_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x08)
+#define OMAP1_DMA_CSSA_U_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x0a)
+#define OMAP1_DMA_CDSA_L_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x0c)
+#define OMAP1_DMA_CDSA_U_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x0e)
+#define OMAP1_DMA_COLOR_L_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x20)
+#define OMAP1_DMA_CCR2_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x24)
+#define OMAP1_DMA_COLOR_U_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x22)
+#define OMAP1_DMA_LCH_CTRL_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x2a)
+
+#define OMAP2_DMA_CSSA_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x9c)
+#define OMAP2_DMA_CDSA_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xa0)
+#define OMAP2_DMA_CCEN_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xbc)
+#define OMAP2_DMA_CCFN_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xc0)
+#define OMAP2_DMA_COLOR_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xc4)
+
+#define OMAP_DMA_NO_DEVICE 0
+#define OMAP_DMA_MCSI1_TX 1
+#define OMAP_DMA_MCSI1_RX 2
+#define OMAP_DMA_I2C_RX 3
+#define OMAP_DMA_I2C_TX 4
+#define OMAP_DMA_EXT_NDMA_REQ 5
+#define OMAP_DMA_EXT_NDMA_REQ2 6
+#define OMAP_DMA_UWIRE_TX 7
+#define OMAP_DMA_MCBSP1_TX 8
+#define OMAP_DMA_MCBSP1_RX 9
+#define OMAP_DMA_MCBSP3_TX 10
+#define OMAP_DMA_MCBSP3_RX 11
+#define OMAP_DMA_UART1_TX 12
+#define OMAP_DMA_UART1_RX 13
+#define OMAP_DMA_UART2_TX 14
+#define OMAP_DMA_UART2_RX 15
+#define OMAP_DMA_MCBSP2_TX 16
+#define OMAP_DMA_MCBSP2_RX 17
+#define OMAP_DMA_UART3_TX 18
+#define OMAP_DMA_UART3_RX 19
+#define OMAP_DMA_CAMERA_IF_RX 20
+#define OMAP_DMA_MMC_TX 21
+#define OMAP_DMA_MMC_RX 22
+#define OMAP_DMA_NAND 23
+#define OMAP_DMA_IRQ_LCD_LINE 24
+#define OMAP_DMA_MEMORY_STICK 25
+#define OMAP_DMA_USB_W2FC_RX0 26
+#define OMAP_DMA_USB_W2FC_RX1 27
+#define OMAP_DMA_USB_W2FC_RX2 28
+#define OMAP_DMA_USB_W2FC_TX0 29
+#define OMAP_DMA_USB_W2FC_TX1 30
+#define OMAP_DMA_USB_W2FC_TX2 31
+
+#define OMAP_DMA_CRYPTO_DES_IN 32
+#define OMAP_DMA_SPI_TX 33
+#define OMAP_DMA_SPI_RX 34
+#define OMAP_DMA_CRYPTO_HASH 35
+#define OMAP_DMA_CCP_ATTN 36
+#define OMAP_DMA_CCP_FIFO_NOT_EMPTY 37
+#define OMAP_DMA_CMT_APE_TX_CHAN_0 38
+#define OMAP_DMA_CMT_APE_RV_CHAN_0 39
+#define OMAP_DMA_CMT_APE_TX_CHAN_1 40
+#define OMAP_DMA_CMT_APE_RV_CHAN_1 41
+#define OMAP_DMA_CMT_APE_TX_CHAN_2 42
+#define OMAP_DMA_CMT_APE_RV_CHAN_2 43
+#define OMAP_DMA_CMT_APE_TX_CHAN_3 44
+#define OMAP_DMA_CMT_APE_RV_CHAN_3 45
+#define OMAP_DMA_CMT_APE_TX_CHAN_4 46
+#define OMAP_DMA_CMT_APE_RV_CHAN_4 47
+#define OMAP_DMA_CMT_APE_TX_CHAN_5 48
+#define OMAP_DMA_CMT_APE_RV_CHAN_5 49
+#define OMAP_DMA_CMT_APE_TX_CHAN_6 50
+#define OMAP_DMA_CMT_APE_RV_CHAN_6 51
+#define OMAP_DMA_CMT_APE_TX_CHAN_7 52
+#define OMAP_DMA_CMT_APE_RV_CHAN_7 53
+#define OMAP_DMA_MMC2_TX 54
+#define OMAP_DMA_MMC2_RX 55
+#define OMAP_DMA_CRYPTO_DES_OUT 56
+
+#define OMAP24XX_DMA_NO_DEVICE 0
+#define OMAP24XX_DMA_XTI_DMA 1
+#define OMAP24XX_DMA_EXT_DMAREQ0 2
+#define OMAP24XX_DMA_EXT_DMAREQ1 3
+#define OMAP24XX_DMA_GPMC 4
+#define OMAP24XX_DMA_GFX 5
+#define OMAP24XX_DMA_DSS 6
+#define OMAP24XX_DMA_VLYNQ_TX 7
+#define OMAP24XX_DMA_CWT 8
+#define OMAP24XX_DMA_AES_TX 9
+#define OMAP24XX_DMA_AES_RX 10
+#define OMAP24XX_DMA_DES_TX 11
+#define OMAP24XX_DMA_DES_RX 12
+#define OMAP24XX_DMA_SHA1MD5_RX 13
+#define OMAP24XX_DMA_EXT_DMAREQ2 14
+#define OMAP24XX_DMA_EXT_DMAREQ3 15
+#define OMAP24XX_DMA_EXT_DMAREQ4 16
+#define OMAP24XX_DMA_EAC_AC_RD 17
+#define OMAP24XX_DMA_EAC_AC_WR 18
+#define OMAP24XX_DMA_EAC_MD_UL_RD 19
+#define OMAP24XX_DMA_EAC_MD_UL_WR 20
+#define OMAP24XX_DMA_EAC_MD_DL_RD 21
+#define OMAP24XX_DMA_EAC_MD_DL_WR 22
+#define OMAP24XX_DMA_EAC_BT_UL_RD 23
+#define OMAP24XX_DMA_EAC_BT_UL_WR 24
+#define OMAP24XX_DMA_EAC_BT_DL_RD 25
+#define OMAP24XX_DMA_EAC_BT_DL_WR 26
+#define OMAP24XX_DMA_I2C1_TX 27
+#define OMAP24XX_DMA_I2C1_RX 28
+#define OMAP24XX_DMA_I2C2_TX 29
+#define OMAP24XX_DMA_I2C2_RX 30
+#define OMAP24XX_DMA_MCBSP1_TX 31
+#define OMAP24XX_DMA_MCBSP1_RX 32
+#define OMAP24XX_DMA_MCBSP2_TX 33
+#define OMAP24XX_DMA_MCBSP2_RX 34
+#define OMAP24XX_DMA_SPI1_TX0 35
+#define OMAP24XX_DMA_SPI1_RX0 36
+#define OMAP24XX_DMA_SPI1_TX1 37
+#define OMAP24XX_DMA_SPI1_RX1 38
+#define OMAP24XX_DMA_SPI1_TX2 39
+#define OMAP24XX_DMA_SPI1_RX2 40
+#define OMAP24XX_DMA_SPI1_TX3 41
+#define OMAP24XX_DMA_SPI1_RX3 42
+#define OMAP24XX_DMA_SPI2_TX0 43
+#define OMAP24XX_DMA_SPI2_RX0 44
+#define OMAP24XX_DMA_SPI2_TX1 45
+#define OMAP24XX_DMA_SPI2_RX1 46
+
+#define OMAP24XX_DMA_UART1_TX 49
+#define OMAP24XX_DMA_UART1_RX 50
+#define OMAP24XX_DMA_UART2_TX 51
+#define OMAP24XX_DMA_UART2_RX 52
+#define OMAP24XX_DMA_UART3_TX 53
+#define OMAP24XX_DMA_UART3_RX 54
+#define OMAP24XX_DMA_USB_W2FC_TX0 55
+#define OMAP24XX_DMA_USB_W2FC_RX0 56
+#define OMAP24XX_DMA_USB_W2FC_TX1 57
+#define OMAP24XX_DMA_USB_W2FC_RX1 58
+#define OMAP24XX_DMA_USB_W2FC_TX2 59
+#define OMAP24XX_DMA_USB_W2FC_RX2 60
+#define OMAP24XX_DMA_MMC1_TX 61
+#define OMAP24XX_DMA_MMC1_RX 62
+#define OMAP24XX_DMA_MS 63
+#define OMAP24XX_DMA_EXT_DMAREQ5 64
+
+#define OMAP1510_DMA_LCD_BASE (0xfffedb00)
+#define OMAP1510_DMA_LCD_CTRL (OMAP1510_DMA_LCD_BASE + 0x00)
+#define OMAP1510_DMA_LCD_TOP_F1_L (OMAP1510_DMA_LCD_BASE + 0x02)
+#define OMAP1510_DMA_LCD_TOP_F1_U (OMAP1510_DMA_LCD_BASE + 0x04)
+#define OMAP1510_DMA_LCD_BOT_F1_L (OMAP1510_DMA_LCD_BASE + 0x06)
+#define OMAP1510_DMA_LCD_BOT_F1_U (OMAP1510_DMA_LCD_BASE + 0x08)
+
+#define OMAP1610_DMA_LCD_BASE (0xfffee300)
+#define OMAP1610_DMA_LCD_CSDP (OMAP1610_DMA_LCD_BASE + 0xc0)
+#define OMAP1610_DMA_LCD_CCR (OMAP1610_DMA_LCD_BASE + 0xc2)
+#define OMAP1610_DMA_LCD_CTRL (OMAP1610_DMA_LCD_BASE + 0xc4)
+#define OMAP1610_DMA_LCD_TOP_B1_L (OMAP1610_DMA_LCD_BASE + 0xc8)
+#define OMAP1610_DMA_LCD_TOP_B1_U (OMAP1610_DMA_LCD_BASE + 0xca)
+#define OMAP1610_DMA_LCD_BOT_B1_L (OMAP1610_DMA_LCD_BASE + 0xcc)
+#define OMAP1610_DMA_LCD_BOT_B1_U (OMAP1610_DMA_LCD_BASE + 0xce)
+#define OMAP1610_DMA_LCD_TOP_B2_L (OMAP1610_DMA_LCD_BASE + 0xd0)
+#define OMAP1610_DMA_LCD_TOP_B2_U (OMAP1610_DMA_LCD_BASE + 0xd2)
+#define OMAP1610_DMA_LCD_BOT_B2_L (OMAP1610_DMA_LCD_BASE + 0xd4)
+#define OMAP1610_DMA_LCD_BOT_B2_U (OMAP1610_DMA_LCD_BASE + 0xd6)
+#define OMAP1610_DMA_LCD_SRC_EI_B1 (OMAP1610_DMA_LCD_BASE + 0xd8)
+#define OMAP1610_DMA_LCD_SRC_FI_B1_L (OMAP1610_DMA_LCD_BASE + 0xda)
+#define OMAP1610_DMA_LCD_SRC_EN_B1 (OMAP1610_DMA_LCD_BASE + 0xe0)
+#define OMAP1610_DMA_LCD_SRC_FN_B1 (OMAP1610_DMA_LCD_BASE + 0xe4)
+#define OMAP1610_DMA_LCD_LCH_CTRL (OMAP1610_DMA_LCD_BASE + 0xea)
+#define OMAP1610_DMA_LCD_SRC_FI_B1_U (OMAP1610_DMA_LCD_BASE + 0xf4)
+
+#define OMAP1_DMA_TOUT_IRQ (1 << 0)
+#define OMAP_DMA_DROP_IRQ (1 << 1)
+#define OMAP_DMA_HALF_IRQ (1 << 2)
+#define OMAP_DMA_FRAME_IRQ (1 << 3)
+#define OMAP_DMA_LAST_IRQ (1 << 4)
+#define OMAP_DMA_BLOCK_IRQ (1 << 5)
+#define OMAP1_DMA_SYNC_IRQ (1 << 6)
+#define OMAP2_DMA_PKT_IRQ (1 << 7)
+#define OMAP2_DMA_TRANS_ERR_IRQ (1 << 8)
+#define OMAP2_DMA_SECURE_ERR_IRQ (1 << 9)
+#define OMAP2_DMA_SUPERVISOR_ERR_IRQ (1 << 10)
+#define OMAP2_DMA_MISALIGNED_ERR_IRQ (1 << 11)
+
+#define OMAP_DMA_DATA_TYPE_S8 0x00
+#define OMAP_DMA_DATA_TYPE_S16 0x01
+#define OMAP_DMA_DATA_TYPE_S32 0x02
+
+#define OMAP_DMA_SYNC_ELEMENT 0x00
+#define OMAP_DMA_SYNC_FRAME 0x01
+#define OMAP_DMA_SYNC_BLOCK 0x02
+
+#define OMAP_DMA_PORT_EMIFF 0x00
+#define OMAP_DMA_PORT_EMIFS 0x01
+#define OMAP_DMA_PORT_OCP_T1 0x02
+#define OMAP_DMA_PORT_TIPB 0x03
+#define OMAP_DMA_PORT_OCP_T2 0x04
+#define OMAP_DMA_PORT_MPUI 0x05
+
+#define OMAP_DMA_AMODE_CONSTANT 0x00
+#define OMAP_DMA_AMODE_POST_INC 0x01
+#define OMAP_DMA_AMODE_SINGLE_IDX 0x02
+#define OMAP_DMA_AMODE_DOUBLE_IDX 0x03
+
+enum {
+ OMAP_LCD_DMA_B1_TOP,
+ OMAP_LCD_DMA_B1_BOTTOM,
+ OMAP_LCD_DMA_B2_TOP,
+ OMAP_LCD_DMA_B2_BOTTOM
+};
+
+enum omap_dma_burst_mode {
+ OMAP_DMA_DATA_BURST_DIS = 0,
+ OMAP_DMA_DATA_BURST_4,
+ OMAP_DMA_DATA_BURST_8,
+ OMAP_DMA_DATA_BURST_16,
+};
+
+enum omap_dma_color_mode {
+ OMAP_DMA_COLOR_DIS = 0,
+ OMAP_DMA_CONSTANT_FILL,
+ OMAP_DMA_TRANSPARENT_COPY
+};
+
+enum omap_dma_write_mode {
+ OMAP_DMA_WRITE_NON_POSTED = 0,
+ OMAP_DMA_WRITE_POSTED,
+ OMAP_DMA_WRITE_LAST_NON_POSTED
+};
+
+struct omap_dma_channel_params {
+ int data_type;
+ int elem_count;
+ int frame_count;
+
+ int src_port;
+ int src_amode;
+ unsigned long src_start;
+ int src_ei;
+ int src_fi;
+
+ int dst_port;
+ int dst_amode;
+ unsigned long dst_start;
+ int dst_ei;
+ int dst_fi;
+
+ int trigger;
+ int sync_mode;
+ int src_or_dst_synch;
+
+ int ie;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/fpga.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/fpga.h
new file mode 100644
index 0000000..a1b210d
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/fpga.h
@@ -0,0 +1,160 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_FPGA_H
+#define __ASM_ARCH_OMAP_FPGA_H
+
+#define omap1510_fpga_init_irq() (0)
+
+#define fpga_read(reg) __raw_readb(reg)
+#define fpga_write(val, reg) __raw_writeb(val, reg)
+
+#define H2P2_DBG_FPGA_BASE 0xE8000000
+#define H2P2_DBG_FPGA_SIZE SZ_4K
+#define H2P2_DBG_FPGA_START 0x04000000
+
+#define H2P2_DBG_FPGA_ETHR_START (H2P2_DBG_FPGA_START + 0x300)
+#define H2P2_DBG_FPGA_FPGA_REV (H2P2_DBG_FPGA_BASE + 0x10)
+#define H2P2_DBG_FPGA_BOARD_REV (H2P2_DBG_FPGA_BASE + 0x12)
+#define H2P2_DBG_FPGA_GPIO (H2P2_DBG_FPGA_BASE + 0x14)
+#define H2P2_DBG_FPGA_LEDS (H2P2_DBG_FPGA_BASE + 0x16)
+#define H2P2_DBG_FPGA_MISC_INPUTS (H2P2_DBG_FPGA_BASE + 0x18)
+#define H2P2_DBG_FPGA_LAN_STATUS (H2P2_DBG_FPGA_BASE + 0x1A)
+#define H2P2_DBG_FPGA_LAN_RESET (H2P2_DBG_FPGA_BASE + 0x1C)
+
+struct h2p2_dbg_fpga {
+
+ u16 smc91x[8];
+
+ u16 fpga_rev;
+ u16 board_rev;
+ u16 gpio_outputs;
+ u16 leds;
+
+ u16 misc_inputs;
+ u16 lan_status;
+ u16 lan_reset;
+ u16 reserved0;
+
+ u16 ps2_data;
+ u16 ps2_ctrl;
+
+};
+
+#define H2P2_DBG_FPGA_LED_GREEN (1 << 15)
+#define H2P2_DBG_FPGA_LED_AMBER (1 << 14)
+#define H2P2_DBG_FPGA_LED_RED (1 << 13)
+#define H2P2_DBG_FPGA_LED_BLUE (1 << 12)
+
+#define H2P2_DBG_FPGA_LOAD_METER (1 << 0)
+#define H2P2_DBG_FPGA_LOAD_METER_SIZE 11
+#define H2P2_DBG_FPGA_LOAD_METER_MASK ((1 << H2P2_DBG_FPGA_LOAD_METER_SIZE) - 1)
+
+#define H2P2_DBG_FPGA_P2_LED_TIMER (1 << 0)
+#define H2P2_DBG_FPGA_P2_LED_IDLE (1 << 1)
+
+#define OMAP1510_FPGA_BASE 0xE8000000
+#define OMAP1510_FPGA_SIZE SZ_4K
+#define OMAP1510_FPGA_START 0x08000000
+
+#define OMAP1510_FPGA_REV_LOW (OMAP1510_FPGA_BASE + 0x0)
+#define OMAP1510_FPGA_REV_HIGH (OMAP1510_FPGA_BASE + 0x1)
+
+#define OMAP1510_FPGA_LCD_PANEL_CONTROL (OMAP1510_FPGA_BASE + 0x2)
+#define OMAP1510_FPGA_LED_DIGIT (OMAP1510_FPGA_BASE + 0x3)
+#define INNOVATOR_FPGA_HID_SPI (OMAP1510_FPGA_BASE + 0x4)
+#define OMAP1510_FPGA_POWER (OMAP1510_FPGA_BASE + 0x5)
+
+#define OMAP1510_FPGA_ISR_LO (OMAP1510_FPGA_BASE + 0x6)
+#define OMAP1510_FPGA_ISR_HI (OMAP1510_FPGA_BASE + 0x7)
+
+#define OMAP1510_FPGA_IMR_LO (OMAP1510_FPGA_BASE + 0x8)
+#define OMAP1510_FPGA_IMR_HI (OMAP1510_FPGA_BASE + 0x9)
+
+#define OMAP1510_FPGA_HOST_RESET (OMAP1510_FPGA_BASE + 0xa)
+#define OMAP1510_FPGA_RST (OMAP1510_FPGA_BASE + 0xb)
+
+#define OMAP1510_FPGA_AUDIO (OMAP1510_FPGA_BASE + 0xc)
+#define OMAP1510_FPGA_DIP (OMAP1510_FPGA_BASE + 0xe)
+#define OMAP1510_FPGA_FPGA_IO (OMAP1510_FPGA_BASE + 0xf)
+#define OMAP1510_FPGA_UART1 (OMAP1510_FPGA_BASE + 0x14)
+#define OMAP1510_FPGA_UART2 (OMAP1510_FPGA_BASE + 0x15)
+#define OMAP1510_FPGA_OMAP1510_STATUS (OMAP1510_FPGA_BASE + 0x16)
+#define OMAP1510_FPGA_BOARD_REV (OMAP1510_FPGA_BASE + 0x18)
+#define OMAP1510P1_PPT_DATA (OMAP1510_FPGA_BASE + 0x100)
+#define OMAP1510P1_PPT_STATUS (OMAP1510_FPGA_BASE + 0x101)
+#define OMAP1510P1_PPT_CONTROL (OMAP1510_FPGA_BASE + 0x102)
+
+#define OMAP1510_FPGA_TOUCHSCREEN (OMAP1510_FPGA_BASE + 0x204)
+
+#define INNOVATOR_FPGA_INFO (OMAP1510_FPGA_BASE + 0x205)
+#define INNOVATOR_FPGA_LCD_BRIGHT_LO (OMAP1510_FPGA_BASE + 0x206)
+#define INNOVATOR_FPGA_LCD_BRIGHT_HI (OMAP1510_FPGA_BASE + 0x207)
+#define INNOVATOR_FPGA_LED_GRN_LO (OMAP1510_FPGA_BASE + 0x208)
+#define INNOVATOR_FPGA_LED_GRN_HI (OMAP1510_FPGA_BASE + 0x209)
+#define INNOVATOR_FPGA_LED_RED_LO (OMAP1510_FPGA_BASE + 0x20a)
+#define INNOVATOR_FPGA_LED_RED_HI (OMAP1510_FPGA_BASE + 0x20b)
+#define INNOVATOR_FPGA_CAM_USB_CONTROL (OMAP1510_FPGA_BASE + 0x20c)
+#define INNOVATOR_FPGA_EXP_CONTROL (OMAP1510_FPGA_BASE + 0x20d)
+#define INNOVATOR_FPGA_ISR2 (OMAP1510_FPGA_BASE + 0x20e)
+#define INNOVATOR_FPGA_IMR2 (OMAP1510_FPGA_BASE + 0x210)
+
+#define OMAP1510_FPGA_ETHR_START (OMAP1510_FPGA_START + 0x300)
+
+#define OMAP1510_FPGA_RESET_VALUE 0x42
+
+#define OMAP1510_FPGA_PCR_IF_PD0 (1 << 7)
+#define OMAP1510_FPGA_PCR_COM2_EN (1 << 6)
+#define OMAP1510_FPGA_PCR_COM1_EN (1 << 5)
+#define OMAP1510_FPGA_PCR_EXP_PD0 (1 << 4)
+#define OMAP1510_FPGA_PCR_EXP_PD1 (1 << 3)
+#define OMAP1510_FPGA_PCR_48MHZ_CLK (1 << 2)
+#define OMAP1510_FPGA_PCR_4MHZ_CLK (1 << 1)
+#define OMAP1510_FPGA_PCR_RSRVD_BIT0 (1 << 0)
+
+#define OMAP1510_FPGA_HID_SCLK (1<<0)
+#define OMAP1510_FPGA_HID_MOSI (1<<1)
+#define OMAP1510_FPGA_HID_nSS (1<<2)
+#define OMAP1510_FPGA_HID_nHSUS (1<<3)
+#define OMAP1510_FPGA_HID_MISO (1<<4)
+#define OMAP1510_FPGA_HID_ATN (1<<5)
+#define OMAP1510_FPGA_HID_rsrvd (1<<6)
+#define OMAP1510_FPGA_HID_RESETn (1<<7)
+
+#define OMAP1510_INT_FPGA (IH_GPIO_BASE + 13)
+
+#define OMAP1510_IH_FPGA_BASE IH_BOARD_BASE
+#define OMAP1510_INT_FPGA_ATN (OMAP1510_IH_FPGA_BASE + 0)
+#define OMAP1510_INT_FPGA_ACK (OMAP1510_IH_FPGA_BASE + 1)
+#define OMAP1510_INT_FPGA2 (OMAP1510_IH_FPGA_BASE + 2)
+#define OMAP1510_INT_FPGA3 (OMAP1510_IH_FPGA_BASE + 3)
+#define OMAP1510_INT_FPGA4 (OMAP1510_IH_FPGA_BASE + 4)
+#define OMAP1510_INT_FPGA5 (OMAP1510_IH_FPGA_BASE + 5)
+#define OMAP1510_INT_FPGA6 (OMAP1510_IH_FPGA_BASE + 6)
+#define OMAP1510_INT_FPGA7 (OMAP1510_IH_FPGA_BASE + 7)
+#define OMAP1510_INT_FPGA8 (OMAP1510_IH_FPGA_BASE + 8)
+#define OMAP1510_INT_FPGA9 (OMAP1510_IH_FPGA_BASE + 9)
+#define OMAP1510_INT_FPGA10 (OMAP1510_IH_FPGA_BASE + 10)
+#define OMAP1510_INT_FPGA11 (OMAP1510_IH_FPGA_BASE + 11)
+#define OMAP1510_INT_FPGA12 (OMAP1510_IH_FPGA_BASE + 12)
+#define OMAP1510_INT_ETHER (OMAP1510_IH_FPGA_BASE + 13)
+#define OMAP1510_INT_FPGAUART1 (OMAP1510_IH_FPGA_BASE + 14)
+#define OMAP1510_INT_FPGAUART2 (OMAP1510_IH_FPGA_BASE + 15)
+#define OMAP1510_INT_FPGA_TS (OMAP1510_IH_FPGA_BASE + 16)
+#define OMAP1510_INT_FPGA17 (OMAP1510_IH_FPGA_BASE + 17)
+#define OMAP1510_INT_FPGA_CAM (OMAP1510_IH_FPGA_BASE + 18)
+#define OMAP1510_INT_FPGA_RTC_A (OMAP1510_IH_FPGA_BASE + 19)
+#define OMAP1510_INT_FPGA_RTC_B (OMAP1510_IH_FPGA_BASE + 20)
+#define OMAP1510_INT_FPGA_CD (OMAP1510_IH_FPGA_BASE + 21)
+#define OMAP1510_INT_FPGA22 (OMAP1510_IH_FPGA_BASE + 22)
+#define OMAP1510_INT_FPGA23 (OMAP1510_IH_FPGA_BASE + 23)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/gpio-switch.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/gpio-switch.h
new file mode 100644
index 0000000..20ea3f2
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/gpio-switch.h
@@ -0,0 +1,37 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_GPIO_SWITCH_H
+#define __ASM_ARCH_OMAP_GPIO_SWITCH_H
+
+#include <linux/types.h>
+
+#define OMAP_GPIO_SWITCH_TYPE_COVER 0x0000
+#define OMAP_GPIO_SWITCH_TYPE_CONNECTION 0x0001
+#define OMAP_GPIO_SWITCH_TYPE_ACTIVITY 0x0002
+#define OMAP_GPIO_SWITCH_FLAG_INVERTED 0x0001
+#define OMAP_GPIO_SWITCH_FLAG_OUTPUT 0x0002
+
+struct omap_gpio_switch {
+ const char *name;
+ s16 gpio;
+ unsigned flags:4;
+ unsigned type:4;
+
+ u16 debounce_rising;
+
+ u16 debounce_falling;
+
+ void (* notify)(void *data, int state);
+ void *notify_data;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/gpio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/gpio.h
new file mode 100644
index 0000000..332246d
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/gpio.h
@@ -0,0 +1,49 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_GPIO_H
+#define __ASM_ARCH_OMAP_GPIO_H
+
+#include <asm/hardware.h>
+#include <asm/arch/irqs.h>
+#include <asm/io.h>
+
+#define OMAP_MPUIO_BASE (void __iomem *)0xfffb5000
+
+#define OMAP_MPUIO_INPUT_LATCH 0x00
+#define OMAP_MPUIO_OUTPUT 0x04
+#define OMAP_MPUIO_IO_CNTL 0x08
+#define OMAP_MPUIO_KBR_LATCH 0x10
+#define OMAP_MPUIO_KBC 0x14
+#define OMAP_MPUIO_GPIO_EVENT_MODE 0x18
+#define OMAP_MPUIO_GPIO_INT_EDGE 0x1c
+#define OMAP_MPUIO_KBD_INT 0x20
+#define OMAP_MPUIO_GPIO_INT 0x24
+#define OMAP_MPUIO_KBD_MASKIT 0x28
+#define OMAP_MPUIO_GPIO_MASKIT 0x2c
+#define OMAP_MPUIO_GPIO_DEBOUNCING 0x30
+#define OMAP_MPUIO_LATCH 0x34
+
+#define OMAP_MPUIO(nr) (OMAP_MAX_GPIO_LINES + (nr))
+#define OMAP_GPIO_IS_MPUIO(nr) ((nr) >= OMAP_MAX_GPIO_LINES)
+
+#define OMAP_GPIO_IRQ(nr) (OMAP_GPIO_IS_MPUIO(nr) ? IH_MPUIO_BASE + ((nr) & 0x0f) : IH_GPIO_BASE + (nr))
+
+struct omap_machine_gpio_bank {
+ int start;
+ int end;
+
+ void (*set_gpio_direction)(int gpio, int is_input);
+ void (*set_gpio_dataout)(int gpio, int enable);
+ int (*get_gpio_datain)(int gpio);
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/hardware.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/hardware.h
new file mode 100644
index 0000000..e515ee8
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/hardware.h
@@ -0,0 +1,157 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_HARDWARE_H
+#define __ASM_ARCH_OMAP_HARDWARE_H
+
+#include <asm/sizes.h>
+#ifndef __ASSEMBLER__
+#include <asm/types.h>
+#include <asm/arch/cpu.h>
+#endif
+#include <asm/arch/io.h>
+#include <asm/arch/serial.h>
+
+#define OMAP_MPU_TIMER1_BASE (0xfffec500)
+#define OMAP_MPU_TIMER2_BASE (0xfffec600)
+#define OMAP_MPU_TIMER3_BASE (0xfffec700)
+#define MPU_TIMER_FREE (1 << 6)
+#define MPU_TIMER_CLOCK_ENABLE (1 << 5)
+#define MPU_TIMER_AR (1 << 1)
+#define MPU_TIMER_ST (1 << 0)
+
+#define CLKGEN_REG_BASE (0xfffece00)
+#define ARM_CKCTL (CLKGEN_REG_BASE + 0x0)
+#define ARM_IDLECT1 (CLKGEN_REG_BASE + 0x4)
+#define ARM_IDLECT2 (CLKGEN_REG_BASE + 0x8)
+#define ARM_EWUPCT (CLKGEN_REG_BASE + 0xC)
+#define ARM_RSTCT1 (CLKGEN_REG_BASE + 0x10)
+#define ARM_RSTCT2 (CLKGEN_REG_BASE + 0x14)
+#define ARM_SYSST (CLKGEN_REG_BASE + 0x18)
+#define ARM_IDLECT3 (CLKGEN_REG_BASE + 0x24)
+
+#define CK_RATEF 1
+#define CK_IDLEF 2
+#define CK_ENABLEF 4
+#define CK_SELECTF 8
+#define SETARM_IDLE_SHIFT
+
+#define DPLL_CTL (0xfffecf00)
+
+#define DSP_CONFIG_REG_BASE (0xe1008000)
+#define DSP_CKCTL (DSP_CONFIG_REG_BASE + 0x0)
+#define DSP_IDLECT1 (DSP_CONFIG_REG_BASE + 0x4)
+#define DSP_IDLECT2 (DSP_CONFIG_REG_BASE + 0x8)
+#define DSP_RSTCT2 (DSP_CONFIG_REG_BASE + 0x14)
+
+#define ULPD_REG_BASE (0xfffe0800)
+#define ULPD_IT_STATUS (ULPD_REG_BASE + 0x14)
+#define ULPD_SETUP_ANALOG_CELL_3 (ULPD_REG_BASE + 0x24)
+#define ULPD_CLOCK_CTRL (ULPD_REG_BASE + 0x30)
+#define DIS_USB_PVCI_CLK (1 << 5)
+#define USB_MCLK_EN (1 << 4)
+#define ULPD_SOFT_REQ (ULPD_REG_BASE + 0x34)
+#define SOFT_UDC_REQ (1 << 4)
+#define SOFT_USB_CLK_REQ (1 << 3)
+#define SOFT_DPLL_REQ (1 << 0)
+#define ULPD_DPLL_CTRL (ULPD_REG_BASE + 0x3c)
+#define ULPD_STATUS_REQ (ULPD_REG_BASE + 0x40)
+#define ULPD_APLL_CTRL (ULPD_REG_BASE + 0x4c)
+#define ULPD_POWER_CTRL (ULPD_REG_BASE + 0x50)
+#define ULPD_SOFT_DISABLE_REQ_REG (ULPD_REG_BASE + 0x68)
+#define DIS_MMC2_DPLL_REQ (1 << 11)
+#define DIS_MMC1_DPLL_REQ (1 << 10)
+#define DIS_UART3_DPLL_REQ (1 << 9)
+#define DIS_UART2_DPLL_REQ (1 << 8)
+#define DIS_UART1_DPLL_REQ (1 << 7)
+#define DIS_USB_HOST_DPLL_REQ (1 << 6)
+#define ULPD_SDW_CLK_DIV_CTRL_SEL (ULPD_REG_BASE + 0x74)
+#define ULPD_CAM_CLK_CTRL (ULPD_REG_BASE + 0x7c)
+
+#define OMAP_MPU_WATCHDOG_BASE (0xfffec800)
+#define OMAP_WDT_TIMER (OMAP_MPU_WATCHDOG_BASE + 0x0)
+#define OMAP_WDT_LOAD_TIM (OMAP_MPU_WATCHDOG_BASE + 0x4)
+#define OMAP_WDT_READ_TIM (OMAP_MPU_WATCHDOG_BASE + 0x4)
+#define OMAP_WDT_TIMER_MODE (OMAP_MPU_WATCHDOG_BASE + 0x8)
+
+#define MOD_CONF_CTRL_0 0xfffe1080
+#define MOD_CONF_CTRL_1 0xfffe1110
+
+#define FUNC_MUX_CTRL_0 0xfffe1000
+#define FUNC_MUX_CTRL_1 0xfffe1004
+#define FUNC_MUX_CTRL_2 0xfffe1008
+#define COMP_MODE_CTRL_0 0xfffe100c
+#define FUNC_MUX_CTRL_3 0xfffe1010
+#define FUNC_MUX_CTRL_4 0xfffe1014
+#define FUNC_MUX_CTRL_5 0xfffe1018
+#define FUNC_MUX_CTRL_6 0xfffe101C
+#define FUNC_MUX_CTRL_7 0xfffe1020
+#define FUNC_MUX_CTRL_8 0xfffe1024
+#define FUNC_MUX_CTRL_9 0xfffe1028
+#define FUNC_MUX_CTRL_A 0xfffe102C
+#define FUNC_MUX_CTRL_B 0xfffe1030
+#define FUNC_MUX_CTRL_C 0xfffe1034
+#define FUNC_MUX_CTRL_D 0xfffe1038
+#define PULL_DWN_CTRL_0 0xfffe1040
+#define PULL_DWN_CTRL_1 0xfffe1044
+#define PULL_DWN_CTRL_2 0xfffe1048
+#define PULL_DWN_CTRL_3 0xfffe104c
+#define PULL_DWN_CTRL_4 0xfffe10ac
+
+#define FUNC_MUX_CTRL_E 0xfffe1090
+#define FUNC_MUX_CTRL_F 0xfffe1094
+#define FUNC_MUX_CTRL_10 0xfffe1098
+#define FUNC_MUX_CTRL_11 0xfffe109c
+#define FUNC_MUX_CTRL_12 0xfffe10a0
+#define PU_PD_SEL_0 0xfffe10b4
+#define PU_PD_SEL_1 0xfffe10b8
+#define PU_PD_SEL_2 0xfffe10bc
+#define PU_PD_SEL_3 0xfffe10c0
+#define PU_PD_SEL_4 0xfffe10c4
+
+#define OMAP_TIMER32K_BASE 0xFFFBC400
+
+#define TIPB_PUBLIC_CNTL_BASE 0xfffed300
+#define MPU_PUBLIC_TIPB_CNTL (TIPB_PUBLIC_CNTL_BASE + 0x8)
+#define TIPB_PRIVATE_CNTL_BASE 0xfffeca00
+#define MPU_PRIVATE_TIPB_CNTL (TIPB_PRIVATE_CNTL_BASE + 0x8)
+
+#define MPUI_BASE (0xfffec900)
+#define MPUI_CTRL (MPUI_BASE + 0x0)
+#define MPUI_DEBUG_ADDR (MPUI_BASE + 0x4)
+#define MPUI_DEBUG_DATA (MPUI_BASE + 0x8)
+#define MPUI_DEBUG_FLAG (MPUI_BASE + 0xc)
+#define MPUI_STATUS_REG (MPUI_BASE + 0x10)
+#define MPUI_DSP_STATUS (MPUI_BASE + 0x14)
+#define MPUI_DSP_BOOT_CONFIG (MPUI_BASE + 0x18)
+#define MPUI_DSP_API_CONFIG (MPUI_BASE + 0x1c)
+
+#define OMAP_LPG1_BASE 0xfffbd000
+#define OMAP_LPG2_BASE 0xfffbd800
+#define OMAP_LPG1_LCR (OMAP_LPG1_BASE + 0x00)
+#define OMAP_LPG1_PMR (OMAP_LPG1_BASE + 0x04)
+#define OMAP_LPG2_LCR (OMAP_LPG2_BASE + 0x00)
+#define OMAP_LPG2_PMR (OMAP_LPG2_BASE + 0x04)
+
+#define OMAP_PWL_BASE 0xfffb5800
+#define OMAP_PWL_ENABLE (OMAP_PWL_BASE + 0x00)
+#define OMAP_PWL_CLK_ENABLE (OMAP_PWL_BASE + 0x04)
+
+#include "omap730.h"
+#include "omap1510.h"
+#include "omap24xx.h"
+#include "omap16xx.h"
+
+#ifndef __ASSEMBLER__
+
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/io.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/io.h
new file mode 100644
index 0000000..12ac3d4
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/io.h
@@ -0,0 +1,54 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_ARCH_IO_H
+#define __ASM_ARM_ARCH_IO_H
+
+#include <asm/hardware.h>
+
+#define IO_SPACE_LIMIT 0xffffffff
+
+#define __io(a) ((void __iomem *)(PCIO_BASE + (a)))
+#define __mem_pci(a) (a)
+
+#define PCIO_BASE 0
+
+#ifndef __ASSEMBLER__
+
+#define omap_readb(a) (*(volatile unsigned char *)IO_ADDRESS(a))
+#define omap_readw(a) (*(volatile unsigned short *)IO_ADDRESS(a))
+#define omap_readl(a) (*(volatile unsigned int *)IO_ADDRESS(a))
+
+#define omap_writeb(v,a) (*(volatile unsigned char *)IO_ADDRESS(a) = (v))
+#define omap_writew(v,a) (*(volatile unsigned short *)IO_ADDRESS(a) = (v))
+#define omap_writel(v,a) (*(volatile unsigned int *)IO_ADDRESS(a) = (v))
+
+typedef struct { volatile u16 offset[256]; } __regbase16;
+#define __REGV16(vaddr) ((__regbase16 *)((vaddr)&~0xff)) ->offset[((vaddr)&0xff)>>1]
+#define __REG16(paddr) __REGV16(io_p2v(paddr))
+
+typedef struct { volatile u8 offset[4096]; } __regbase8;
+#define __REGV8(vaddr) ((__regbase8 *)((vaddr)&~4095)) ->offset[((vaddr)&4095)>>0]
+#define __REG8(paddr) __REGV8(io_p2v(paddr))
+
+typedef struct { volatile u32 offset[4096]; } __regbase32;
+#define __REGV32(vaddr) ((__regbase32 *)((vaddr)&~4095)) ->offset[((vaddr)&4095)>>2]
+#define __REG32(paddr) __REGV32(io_p2v(paddr))
+
+#else
+
+#define __REG8(paddr) io_p2v(paddr)
+#define __REG16(paddr) io_p2v(paddr)
+#define __REG32(paddr) io_p2v(paddr)
+
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/irqs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/irqs.h
new file mode 100644
index 0000000..3e94487
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/irqs.h
@@ -0,0 +1,242 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP15XX_IRQS_H
+#define __ASM_ARCH_OMAP15XX_IRQS_H
+
+#define INT_CAMERA 1
+#define INT_FIQ 3
+#define INT_RTDX 6
+#define INT_DSP_MMU_ABORT 7
+#define INT_HOST 8
+#define INT_ABORT 9
+#define INT_DSP_MAILBOX1 10
+#define INT_DSP_MAILBOX2 11
+#define INT_BRIDGE_PRIV 13
+#define INT_GPIO_BANK1 14
+#define INT_UART3 15
+#define INT_TIMER3 16
+#define INT_DMA_CH0_6 19
+#define INT_DMA_CH1_7 20
+#define INT_DMA_CH2_8 21
+#define INT_DMA_CH3 22
+#define INT_DMA_CH4 23
+#define INT_DMA_CH5 24
+#define INT_DMA_LCD 25
+#define INT_TIMER1 26
+#define INT_WD_TIMER 27
+#define INT_BRIDGE_PUB 28
+#define INT_TIMER2 30
+#define INT_LCD_CTRL 31
+
+#define INT_1510_IH2_IRQ 0
+#define INT_1510_RES2 2
+#define INT_1510_SPI_TX 4
+#define INT_1510_SPI_RX 5
+#define INT_1510_RES12 12
+#define INT_1510_LB_MMU 17
+#define INT_1510_RES18 18
+#define INT_1510_LOCAL_BUS 29
+
+#define INT_1610_IH2_IRQ 0
+#define INT_1610_IH2_FIQ 2
+#define INT_1610_McBSP2_TX 4
+#define INT_1610_McBSP2_RX 5
+#define INT_1610_LCD_LINE 12
+#define INT_1610_GPTIMER1 17
+#define INT_1610_GPTIMER2 18
+#define INT_1610_SSR_FIFO_0 29
+
+#define INT_730_IH2_FIQ 0
+#define INT_730_IH2_IRQ 1
+#define INT_730_USB_NON_ISO 2
+#define INT_730_USB_ISO 3
+#define INT_730_ICR 4
+#define INT_730_EAC 5
+#define INT_730_GPIO_BANK1 6
+#define INT_730_GPIO_BANK2 7
+#define INT_730_GPIO_BANK3 8
+#define INT_730_McBSP2TX 10
+#define INT_730_McBSP2RX 11
+#define INT_730_McBSP2RX_OVF 12
+#define INT_730_LCD_LINE 14
+#define INT_730_GSM_PROTECT 15
+#define INT_730_TIMER3 16
+#define INT_730_GPIO_BANK5 17
+#define INT_730_GPIO_BANK6 18
+#define INT_730_SPGIO_WR 29
+
+#define IH2_BASE 32
+
+#define INT_KEYBOARD (1 + IH2_BASE)
+#define INT_uWireTX (2 + IH2_BASE)
+#define INT_uWireRX (3 + IH2_BASE)
+#define INT_I2C (4 + IH2_BASE)
+#define INT_MPUIO (5 + IH2_BASE)
+#define INT_USB_HHC_1 (6 + IH2_BASE)
+#define INT_McBSP3TX (10 + IH2_BASE)
+#define INT_McBSP3RX (11 + IH2_BASE)
+#define INT_McBSP1TX (12 + IH2_BASE)
+#define INT_McBSP1RX (13 + IH2_BASE)
+#define INT_UART2 (14 + IH2_BASE)
+#define INT_UART1 (15 + IH2_BASE)
+#define INT_BT_MCSI1TX (16 + IH2_BASE)
+#define INT_BT_MCSI1RX (17 + IH2_BASE)
+#define INT_USB_W2FC (20 + IH2_BASE)
+#define INT_1WIRE (21 + IH2_BASE)
+#define INT_OS_TIMER (22 + IH2_BASE)
+#define INT_MMC (23 + IH2_BASE)
+#define INT_GAUGE_32K (24 + IH2_BASE)
+#define INT_RTC_TIMER (25 + IH2_BASE)
+#define INT_RTC_ALARM (26 + IH2_BASE)
+#define INT_MEM_STICK (27 + IH2_BASE)
+#define INT_DSP_MMU (28 + IH2_BASE)
+
+#define INT_1510_COM_SPI_RO (31 + IH2_BASE)
+
+#define INT_1610_FAC (0 + IH2_BASE)
+#define INT_1610_USB_HHC_2 (7 + IH2_BASE)
+#define INT_1610_USB_OTG (8 + IH2_BASE)
+#define INT_1610_SoSSI (9 + IH2_BASE)
+#define INT_1610_SoSSI_MATCH (19 + IH2_BASE)
+#define INT_1610_McBSP2RX_OF (31 + IH2_BASE)
+#define INT_1610_STI (32 + IH2_BASE)
+#define INT_1610_STI_WAKEUP (33 + IH2_BASE)
+#define INT_1610_GPTIMER3 (34 + IH2_BASE)
+#define INT_1610_GPTIMER4 (35 + IH2_BASE)
+#define INT_1610_GPTIMER5 (36 + IH2_BASE)
+#define INT_1610_GPTIMER6 (37 + IH2_BASE)
+#define INT_1610_GPTIMER7 (38 + IH2_BASE)
+#define INT_1610_GPTIMER8 (39 + IH2_BASE)
+#define INT_1610_GPIO_BANK2 (40 + IH2_BASE)
+#define INT_1610_GPIO_BANK3 (41 + IH2_BASE)
+#define INT_1610_MMC2 (42 + IH2_BASE)
+#define INT_1610_CF (43 + IH2_BASE)
+#define INT_1610_WAKE_UP_REQ (46 + IH2_BASE)
+#define INT_1610_GPIO_BANK4 (48 + IH2_BASE)
+#define INT_1610_SPI (49 + IH2_BASE)
+#define INT_1610_DMA_CH6 (53 + IH2_BASE)
+#define INT_1610_DMA_CH7 (54 + IH2_BASE)
+#define INT_1610_DMA_CH8 (55 + IH2_BASE)
+#define INT_1610_DMA_CH9 (56 + IH2_BASE)
+#define INT_1610_DMA_CH10 (57 + IH2_BASE)
+#define INT_1610_DMA_CH11 (58 + IH2_BASE)
+#define INT_1610_DMA_CH12 (59 + IH2_BASE)
+#define INT_1610_DMA_CH13 (60 + IH2_BASE)
+#define INT_1610_DMA_CH14 (61 + IH2_BASE)
+#define INT_1610_DMA_CH15 (62 + IH2_BASE)
+#define INT_1610_NAND (63 + IH2_BASE)
+
+#define INT_730_HW_ERRORS (0 + IH2_BASE)
+#define INT_730_NFIQ_PWR_FAIL (1 + IH2_BASE)
+#define INT_730_CFCD (2 + IH2_BASE)
+#define INT_730_CFIREQ (3 + IH2_BASE)
+#define INT_730_I2C (4 + IH2_BASE)
+#define INT_730_PCC (5 + IH2_BASE)
+#define INT_730_MPU_EXT_NIRQ (6 + IH2_BASE)
+#define INT_730_SPI_100K_1 (7 + IH2_BASE)
+#define INT_730_SYREN_SPI (8 + IH2_BASE)
+#define INT_730_VLYNQ (9 + IH2_BASE)
+#define INT_730_GPIO_BANK4 (10 + IH2_BASE)
+#define INT_730_McBSP1TX (11 + IH2_BASE)
+#define INT_730_McBSP1RX (12 + IH2_BASE)
+#define INT_730_McBSP1RX_OF (13 + IH2_BASE)
+#define INT_730_UART_MODEM_IRDA_2 (14 + IH2_BASE)
+#define INT_730_UART_MODEM_1 (15 + IH2_BASE)
+#define INT_730_MCSI (16 + IH2_BASE)
+#define INT_730_uWireTX (17 + IH2_BASE)
+#define INT_730_uWireRX (18 + IH2_BASE)
+#define INT_730_SMC_CD (19 + IH2_BASE)
+#define INT_730_SMC_IREQ (20 + IH2_BASE)
+#define INT_730_HDQ_1WIRE (21 + IH2_BASE)
+#define INT_730_TIMER32K (22 + IH2_BASE)
+#define INT_730_MMC_SDIO (23 + IH2_BASE)
+#define INT_730_UPLD (24 + IH2_BASE)
+#define INT_730_USB_HHC_1 (27 + IH2_BASE)
+#define INT_730_USB_HHC_2 (28 + IH2_BASE)
+#define INT_730_USB_GENI (29 + IH2_BASE)
+#define INT_730_USB_OTG (30 + IH2_BASE)
+#define INT_730_CAMERA_IF (31 + IH2_BASE)
+#define INT_730_RNG (32 + IH2_BASE)
+#define INT_730_DUAL_MODE_TIMER (33 + IH2_BASE)
+#define INT_730_DBB_RF_EN (34 + IH2_BASE)
+#define INT_730_MPUIO_KEYPAD (35 + IH2_BASE)
+#define INT_730_SHA1_MD5 (36 + IH2_BASE)
+#define INT_730_SPI_100K_2 (37 + IH2_BASE)
+#define INT_730_RNG_IDLE (38 + IH2_BASE)
+#define INT_730_MPUIO (39 + IH2_BASE)
+#define INT_730_LLPC_LCD_CTRL_CAN_BE_OFF (40 + IH2_BASE)
+#define INT_730_LLPC_OE_FALLING (41 + IH2_BASE)
+#define INT_730_LLPC_OE_RISING (42 + IH2_BASE)
+#define INT_730_LLPC_VSYNC (43 + IH2_BASE)
+#define INT_730_WAKE_UP_REQ (46 + IH2_BASE)
+#define INT_730_DMA_CH6 (53 + IH2_BASE)
+#define INT_730_DMA_CH7 (54 + IH2_BASE)
+#define INT_730_DMA_CH8 (55 + IH2_BASE)
+#define INT_730_DMA_CH9 (56 + IH2_BASE)
+#define INT_730_DMA_CH10 (57 + IH2_BASE)
+#define INT_730_DMA_CH11 (58 + IH2_BASE)
+#define INT_730_DMA_CH12 (59 + IH2_BASE)
+#define INT_730_DMA_CH13 (60 + IH2_BASE)
+#define INT_730_DMA_CH14 (61 + IH2_BASE)
+#define INT_730_DMA_CH15 (62 + IH2_BASE)
+#define INT_730_NAND (63 + IH2_BASE)
+
+#define INT_24XX_SYS_NIRQ 7
+#define INT_24XX_SDMA_IRQ0 12
+#define INT_24XX_SDMA_IRQ1 13
+#define INT_24XX_SDMA_IRQ2 14
+#define INT_24XX_SDMA_IRQ3 15
+#define INT_24XX_CAM_IRQ 24
+#define INT_24XX_DSS_IRQ 25
+#define INT_24XX_GPIO_BANK1 29
+#define INT_24XX_GPIO_BANK2 30
+#define INT_24XX_GPIO_BANK3 31
+#define INT_24XX_GPIO_BANK4 32
+#define INT_24XX_GPTIMER1 37
+#define INT_24XX_GPTIMER2 38
+#define INT_24XX_GPTIMER3 39
+#define INT_24XX_GPTIMER4 40
+#define INT_24XX_GPTIMER5 41
+#define INT_24XX_GPTIMER6 42
+#define INT_24XX_GPTIMER7 43
+#define INT_24XX_GPTIMER8 44
+#define INT_24XX_GPTIMER9 45
+#define INT_24XX_GPTIMER10 46
+#define INT_24XX_GPTIMER11 47
+#define INT_24XX_GPTIMER12 48
+#define INT_24XX_MCBSP1_IRQ_TX 59
+#define INT_24XX_MCBSP1_IRQ_RX 60
+#define INT_24XX_MCBSP2_IRQ_TX 62
+#define INT_24XX_MCBSP2_IRQ_RX 63
+#define INT_24XX_UART1_IRQ 72
+#define INT_24XX_UART2_IRQ 73
+#define INT_24XX_UART3_IRQ 74
+#define INT_24XX_MMC_IRQ 83
+
+#define OMAP_MAX_GPIO_LINES 192
+#define IH_GPIO_BASE (128 + IH2_BASE)
+#define IH_MPUIO_BASE (OMAP_MAX_GPIO_LINES + IH_GPIO_BASE)
+#define IH_BOARD_BASE (16 + IH_MPUIO_BASE)
+
+#define OMAP_IRQ_BIT(irq) (1 << ((irq) % 32))
+
+#ifndef __ASSEMBLY__
+
+#endif
+
+#include <asm/hardware.h>
+
+#ifndef NR_IRQS
+#define NR_IRQS IH_BOARD_BASE
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mcbsp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mcbsp.h
new file mode 100644
index 0000000..cae5e3b
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mcbsp.h
@@ -0,0 +1,185 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_MCBSP_H
+#define __ASM_ARCH_OMAP_MCBSP_H
+
+#include <asm/hardware.h>
+
+#define OMAP730_MCBSP1_BASE 0xfffb1000
+#define OMAP730_MCBSP2_BASE 0xfffb1800
+
+#define OMAP1510_MCBSP1_BASE 0xe1011800
+#define OMAP1510_MCBSP2_BASE 0xfffb1000
+#define OMAP1510_MCBSP3_BASE 0xe1017000
+
+#define OMAP1610_MCBSP1_BASE 0xe1011800
+#define OMAP1610_MCBSP2_BASE 0xfffb1000
+#define OMAP1610_MCBSP3_BASE 0xe1017000
+
+#define OMAP24XX_MCBSP1_BASE 0x48074000
+#define OMAP24XX_MCBSP2_BASE 0x48076000
+
+#define OMAP_MCBSP_READ(base, reg) __raw_readw((base) + OMAP_MCBSP_REG_##reg)
+#define OMAP_MCBSP_WRITE(base, reg, val) __raw_writew((val), (base) + OMAP_MCBSP_REG_##reg)
+
+#define RRST 0x0001
+#define RRDY 0x0002
+#define RFULL 0x0004
+#define RSYNC_ERR 0x0008
+#define RINTM(value) ((value)<<4)
+#define ABIS 0x0040
+#define DXENA 0x0080
+#define CLKSTP(value) ((value)<<11)
+#define RJUST(value) ((value)<<13)
+#define DLB 0x8000
+
+#define XRST 0x0001
+#define XRDY 0x0002
+#define XEMPTY 0x0004
+#define XSYNC_ERR 0x0008
+#define XINTM(value) ((value)<<4)
+#define GRST 0x0040
+#define FRST 0x0080
+#define SOFT 0x0100
+#define FREE 0x0200
+
+#define CLKRP 0x0001
+#define CLKXP 0x0002
+#define FSRP 0x0004
+#define FSXP 0x0008
+#define DR_STAT 0x0010
+#define DX_STAT 0x0020
+#define CLKS_STAT 0x0040
+#define SCLKME 0x0080
+#define CLKRM 0x0100
+#define CLKXM 0x0200
+#define FSRM 0x0400
+#define FSXM 0x0800
+#define RIOEN 0x1000
+#define XIOEN 0x2000
+#define IDLE_EN 0x4000
+
+#define RWDLEN1(value) ((value)<<5)
+#define RFRLEN1(value) ((value)<<8)
+
+#define XWDLEN1(value) ((value)<<5)
+#define XFRLEN1(value) ((value)<<8)
+
+#define RDATDLY(value) (value)
+#define RFIG 0x0004
+#define RCOMPAND(value) ((value)<<3)
+#define RWDLEN2(value) ((value)<<5)
+#define RFRLEN2(value) ((value)<<8)
+#define RPHASE 0x8000
+
+#define XDATDLY(value) (value)
+#define XFIG 0x0004
+#define XCOMPAND(value) ((value)<<3)
+#define XWDLEN2(value) ((value)<<5)
+#define XFRLEN2(value) ((value)<<8)
+#define XPHASE 0x8000
+
+#define CLKGDV(value) (value)
+#define FWID(value) ((value)<<8)
+
+#define FPER(value) (value)
+#define FSGM 0x1000
+#define CLKSM 0x2000
+#define CLKSP 0x4000
+#define GSYNC 0x8000
+
+#define RMCM 0x0001
+#define RCBLK(value) ((value)<<2)
+#define RPABLK(value) ((value)<<5)
+#define RPBBLK(value) ((value)<<7)
+
+#define XMCM(value) (value)
+#define XCBLK(value) ((value)<<2)
+#define XPABLK(value) ((value)<<5)
+#define XPBBLK(value) ((value)<<7)
+
+struct omap_mcbsp_reg_cfg {
+ u16 spcr2;
+ u16 spcr1;
+ u16 rcr2;
+ u16 rcr1;
+ u16 xcr2;
+ u16 xcr1;
+ u16 srgr2;
+ u16 srgr1;
+ u16 mcr2;
+ u16 mcr1;
+ u16 pcr0;
+ u16 rcerc;
+ u16 rcerd;
+ u16 xcerc;
+ u16 xcerd;
+ u16 rcere;
+ u16 rcerf;
+ u16 xcere;
+ u16 xcerf;
+ u16 rcerg;
+ u16 rcerh;
+ u16 xcerg;
+ u16 xcerh;
+};
+
+typedef enum {
+ OMAP_MCBSP1 = 0,
+ OMAP_MCBSP2,
+ OMAP_MCBSP3,
+} omap_mcbsp_id;
+
+typedef int __bitwise omap_mcbsp_io_type_t;
+#define OMAP_MCBSP_IRQ_IO ((__force omap_mcbsp_io_type_t) 1)
+#define OMAP_MCBSP_POLL_IO ((__force omap_mcbsp_io_type_t) 2)
+
+typedef enum {
+ OMAP_MCBSP_WORD_8 = 0,
+ OMAP_MCBSP_WORD_12,
+ OMAP_MCBSP_WORD_16,
+ OMAP_MCBSP_WORD_20,
+ OMAP_MCBSP_WORD_24,
+ OMAP_MCBSP_WORD_32,
+} omap_mcbsp_word_length;
+
+typedef enum {
+ OMAP_MCBSP_CLK_RISING = 0,
+ OMAP_MCBSP_CLK_FALLING,
+} omap_mcbsp_clk_polarity;
+
+typedef enum {
+ OMAP_MCBSP_FS_ACTIVE_HIGH = 0,
+ OMAP_MCBSP_FS_ACTIVE_LOW,
+} omap_mcbsp_fs_polarity;
+
+typedef enum {
+ OMAP_MCBSP_CLK_STP_MODE_NO_DELAY = 0,
+ OMAP_MCBSP_CLK_STP_MODE_DELAY,
+} omap_mcbsp_clk_stp_mode;
+
+typedef enum {
+ OMAP_MCBSP_SPI_MASTER = 0,
+ OMAP_MCBSP_SPI_SLAVE,
+} omap_mcbsp_spi_mode;
+
+struct omap_mcbsp_spi_cfg {
+ omap_mcbsp_spi_mode spi_mode;
+ omap_mcbsp_clk_polarity rx_clock_polarity;
+ omap_mcbsp_clk_polarity tx_clock_polarity;
+ omap_mcbsp_fs_polarity fsx_polarity;
+ u8 clk_div;
+ omap_mcbsp_clk_stp_mode clk_stp_mode;
+ omap_mcbsp_word_length word_length;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/memory.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/memory.h
new file mode 100644
index 0000000..8b064b8
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/memory.h
@@ -0,0 +1,19 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_MEMORY_H
+#define __ASM_ARCH_MEMORY_H
+
+#define __virt_to_bus(x) __virt_to_phys(x)
+#define __bus_to_virt(x) __phys_to_virt(x)
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mtd-xip.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mtd-xip.h
new file mode 100644
index 0000000..9b60aef
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mtd-xip.h
@@ -0,0 +1,31 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARCH_OMAP_MTD_XIP_H__
+#define __ARCH_OMAP_MTD_XIP_H__
+
+#include <asm/hardware.h>
+#define OMAP_MPU_TIMER_BASE (0xfffec500)
+#define OMAP_MPU_TIMER_OFFSET 0x100
+
+typedef struct {
+ u32 cntl;
+ u32 load_tim;
+ u32 read_tim;
+} xip_omap_mpu_timer_regs_t;
+
+#define xip_omap_mpu_timer_base(n) ((volatile xip_omap_mpu_timer_regs_t*)IO_ADDRESS(OMAP_MPU_TIMER_BASE + (n)*OMAP_MPU_TIMER_OFFSET))
+
+#define xip_irqpending() (omap_readl(OMAP_IH1_ITR) & ~omap_readl(OMAP_IH1_MIR))
+#define xip_currtime() (~xip_omap_mpu_timer_read(0))
+#define xip_elapsed_since(x) (signed)((~xip_omap_mpu_timer_read(0) - (x)) / 6)
+#define xip_cpu_idle() asm volatile ("mcr p15, 0, %0, c7, c0, 4" :: "r" (1))
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mux.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mux.h
new file mode 100644
index 0000000..72da54e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mux.h
@@ -0,0 +1,391 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_MUX_H
+#define __ASM_ARCH_MUX_H
+
+#define PU_PD_SEL_NA 0
+#define PULL_DWN_CTRL_NA 0
+
+#define MUX_REG(reg, mode_offset, mode) .mux_reg = FUNC_MUX_CTRL_##reg, .mask_offset = mode_offset, .mask = mode,
+
+#define PULL_REG(reg, bit, status) .pull_reg = PULL_DWN_CTRL_##reg, .pull_bit = bit, .pull_val = status,
+
+#define PU_PD_REG(reg, status) .pu_pd_reg = PU_PD_SEL_##reg, .pu_pd_val = status,
+
+#define MUX_REG_730(reg, mode_offset, mode) .mux_reg = OMAP730_IO_CONF_##reg, .mask_offset = mode_offset, .mask = mode,
+
+#define PULL_REG_730(reg, bit, status) .pull_reg = OMAP730_IO_CONF_##reg, .pull_bit = bit, .pull_val = status,
+
+#define MUX_CFG(desc, mux_reg, mode_offset, mode, pull_reg, pull_bit, pull_status, pu_pd_reg, pu_pd_status, debug_status) { .name = desc, .debug = debug_status, MUX_REG(mux_reg, mode_offset, mode) PULL_REG(pull_reg, pull_bit, !pull_status) PU_PD_REG(pu_pd_reg, pu_pd_status) },
+
+#define MUX_CFG_730(desc, mux_reg, mode_offset, mode, pull_bit, pull_status, debug_status) { .name = desc, .debug = debug_status, MUX_REG_730(mux_reg, mode_offset, mode) PULL_REG_730(mux_reg, pull_bit, pull_status) PU_PD_REG(NA, 0) },
+
+#define MUX_CFG_24XX(desc, reg_offset, mode, pull_en, pull_mode, dbg) { .name = desc, .debug = dbg, .mux_reg = reg_offset, .mask = mode, .pull_val = pull_en, .pu_pd_val = pull_mode, },
+
+#define PULL_DISABLED 0
+#define PULL_ENABLED 1
+
+#define PULL_DOWN 0
+#define PULL_UP 1
+
+struct pin_config {
+ char *name;
+ unsigned char busy;
+ unsigned char debug;
+
+ const char *mux_reg_name;
+ const unsigned int mux_reg;
+ const unsigned char mask_offset;
+ const unsigned char mask;
+
+ const char *pull_name;
+ const unsigned int pull_reg;
+ const unsigned char pull_val;
+ const unsigned char pull_bit;
+
+ const char *pu_pd_name;
+ const unsigned int pu_pd_reg;
+ const unsigned char pu_pd_val;
+};
+
+enum omap730_index {
+
+ E2_730_KBR0,
+ J7_730_KBR1,
+ E1_730_KBR2,
+ F3_730_KBR3,
+ D2_730_KBR4,
+ AA20_730_KBR5,
+ V17_730_KBR6,
+ C2_730_KBC0,
+ D3_730_KBC1,
+ E4_730_KBC2,
+ F4_730_KBC3,
+ E3_730_KBC4,
+
+ AA17_730_USB_DM,
+ W16_730_USB_PU_EN,
+ W17_730_USB_VBUSI,
+
+ V19_730_GPIO_15,
+ M19_730_GPIO_77,
+ C21_730_GPIO_121_122,
+ K19_730_GPIO_126,
+ K15_730_GPIO_127,
+
+ P15_730_GPIO_16_17,
+
+ M15_730_GPIO_83,
+ N20_730_GPIO_82,
+ N18_730_GPIO_81,
+ N19_730_GPIO_80,
+ L15_730_GPIO_76,
+
+ UART1_CTS_RTS,
+ OMAP_730_GPIOS_42_43,
+ UART1_TX_RX,
+ OMAP_730_GPIOS_40_41,
+ UART1_USB_RX_TX,
+ UART1_USB_RTS,
+ UART1_USB_CTS
+};
+
+enum omap1xxx_index {
+
+ UART1_TX = 0,
+ UART1_RTS,
+
+ UART2_TX,
+ UART2_RX,
+ UART2_CTS,
+ UART2_RTS,
+
+ UART3_TX,
+ UART3_RX,
+ UART3_CTS,
+ UART3_RTS,
+ UART3_CLKREQ,
+ UART3_BCLK,
+ Y15_1610_UART3_RTS,
+
+ PWT,
+ PWL,
+
+ R18_USB_VBUS,
+ R18_1510_USB_GPIO0,
+ W4_USB_PUEN,
+ W4_USB_CLKO,
+ W4_USB_HIGHZ,
+ W4_GPIO58,
+
+ USB1_SUSP,
+ USB1_SEO,
+ W13_1610_USB1_SE0,
+ USB1_TXEN,
+ USB1_TXD,
+ USB1_VP,
+ USB1_VM,
+ USB1_RCV,
+ USB1_SPEED,
+ R13_1610_USB1_SPEED,
+ R13_1710_USB1_SE0,
+
+ USB2_SUSP,
+ USB2_VP,
+ USB2_TXEN,
+ USB2_VM,
+ USB2_RCV,
+ USB2_SEO,
+ USB2_TXD,
+
+ R18_1510_GPIO0,
+ R19_1510_GPIO1,
+ M14_1510_GPIO2,
+
+ P18_1610_GPIO3,
+ Y15_1610_GPIO17,
+
+ R18_1710_GPIO0,
+ V2_1710_GPIO10,
+ N21_1710_GPIO14,
+ W15_1710_GPIO40,
+
+ MPUIO2,
+ N15_1610_MPUIO2,
+ MPUIO4,
+ MPUIO5,
+ T20_1610_MPUIO5,
+ W11_1610_MPUIO6,
+ V10_1610_MPUIO7,
+ W11_1610_MPUIO9,
+ V10_1610_MPUIO10,
+ W10_1610_MPUIO11,
+ E20_1610_MPUIO13,
+ U20_1610_MPUIO14,
+ E19_1610_MPUIO15,
+
+ MCBSP2_CLKR,
+ MCBSP2_CLKX,
+ MCBSP2_DR,
+ MCBSP2_DX,
+ MCBSP2_FSR,
+ MCBSP2_FSX,
+
+ MCBSP3_CLKX,
+
+ BALLOUT_V8_ARMIO3,
+ N20_HDQ,
+
+ W8_1610_MMC2_DAT0,
+ V8_1610_MMC2_DAT1,
+ W15_1610_MMC2_DAT2,
+ R10_1610_MMC2_DAT3,
+ Y10_1610_MMC2_CLK,
+ Y8_1610_MMC2_CMD,
+ V9_1610_MMC2_CMDDIR,
+ V5_1610_MMC2_DATDIR0,
+ W19_1610_MMC2_DATDIR1,
+ R18_1610_MMC2_CLKIN,
+
+ M19_1610_ETM_PSTAT0,
+ L15_1610_ETM_PSTAT1,
+ L18_1610_ETM_PSTAT2,
+ L19_1610_ETM_D0,
+ J19_1610_ETM_D6,
+ J18_1610_ETM_D7,
+
+ P20_1610_GPIO4,
+ V9_1610_GPIO7,
+ W8_1610_GPIO9,
+ N20_1610_GPIO11,
+ N19_1610_GPIO13,
+ P10_1610_GPIO22,
+ V5_1610_GPIO24,
+ AA20_1610_GPIO_41,
+ W19_1610_GPIO48,
+ M7_1610_GPIO62,
+ V14_16XX_GPIO37,
+ R9_16XX_GPIO18,
+ L14_16XX_GPIO49,
+
+ V19_1610_UWIRE_SCLK,
+ U18_1610_UWIRE_SDI,
+ W21_1610_UWIRE_SDO,
+ N14_1610_UWIRE_CS0,
+ P15_1610_UWIRE_CS3,
+ N15_1610_UWIRE_CS1,
+
+ U19_1610_SPIF_SCK,
+ U18_1610_SPIF_DIN,
+ P20_1610_SPIF_DIN,
+ W21_1610_SPIF_DOUT,
+ R18_1610_SPIF_DOUT,
+ N14_1610_SPIF_CS0,
+ N15_1610_SPIF_CS1,
+ T19_1610_SPIF_CS2,
+ P15_1610_SPIF_CS3,
+
+ L3_1610_FLASH_CS2B_OE,
+ M8_1610_FLASH_CS2B_WE,
+
+ MMC_CMD,
+ MMC_DAT1,
+ MMC_DAT2,
+ MMC_DAT0,
+ MMC_CLK,
+ MMC_DAT3,
+
+ M15_1710_MMC_CLKI,
+ P19_1710_MMC_CMDDIR,
+ P20_1710_MMC_DATDIR0,
+
+ W9_USB0_TXEN,
+ AA9_USB0_VP,
+ Y5_USB0_RCV,
+ R9_USB0_VM,
+ V6_USB0_TXD,
+ W5_USB0_SE0,
+ V9_USB0_SPEED,
+ V9_USB0_SUSP,
+
+ W9_USB2_TXEN,
+ AA9_USB2_VP,
+ Y5_USB2_RCV,
+ R9_USB2_VM,
+ V6_USB2_TXD,
+ W5_USB2_SE0,
+
+ R13_1610_UART1_TX,
+ V14_16XX_UART1_RX,
+ R14_1610_UART1_CTS,
+ AA15_1610_UART1_RTS,
+ R9_16XX_UART2_RX,
+ L14_16XX_UART3_RX,
+
+ I2C_SCL,
+ I2C_SDA,
+
+ F18_1610_KBC0,
+ D20_1610_KBC1,
+ D19_1610_KBC2,
+ E18_1610_KBC3,
+ C21_1610_KBC4,
+ G18_1610_KBR0,
+ F19_1610_KBR1,
+ H14_1610_KBR2,
+ E20_1610_KBR3,
+ E19_1610_KBR4,
+ N19_1610_KBR5,
+
+ T20_1610_LOW_PWR,
+
+ V5_1710_MCLK_ON,
+ V5_1710_MCLK_OFF,
+ R10_1610_MCLK_ON,
+ R10_1610_MCLK_OFF,
+
+ P11_1610_CF_CD2,
+ R11_1610_CF_IOIS16,
+ V10_1610_CF_IREQ,
+ W10_1610_CF_RESET,
+ W11_1610_CF_CD1,
+};
+
+enum omap24xx_index {
+
+ M19_24XX_I2C1_SCL,
+ L15_24XX_I2C1_SDA,
+ J15_24XX_I2C2_SCL,
+ H19_24XX_I2C2_SDA,
+
+ W19_24XX_SYS_NIRQ,
+
+ W14_24XX_SYS_CLKOUT,
+
+ L3_GPMC_WAIT0,
+ N7_GPMC_WAIT1,
+ M1_GPMC_WAIT2,
+ P1_GPMC_WAIT3,
+
+ Y15_24XX_MCBSP2_CLKX,
+ R14_24XX_MCBSP2_FSX,
+ W15_24XX_MCBSP2_DR,
+ V15_24XX_MCBSP2_DX,
+
+ M21_242X_GPIO11,
+ AA10_242X_GPIO13,
+ AA6_242X_GPIO14,
+ AA4_242X_GPIO15,
+ Y11_242X_GPIO16,
+ AA12_242X_GPIO17,
+ AA8_242X_GPIO58,
+ Y20_24XX_GPIO60,
+ W4__24XX_GPIO74,
+ M15_24XX_GPIO92,
+ V14_24XX_GPIO117,
+
+ V4_242X_GPIO49,
+ W2_242X_GPIO50,
+ U4_242X_GPIO51,
+ V3_242X_GPIO52,
+ V2_242X_GPIO53,
+ V6_242X_GPIO53,
+ T4_242X_GPIO54,
+ Y4_242X_GPIO54,
+ T3_242X_GPIO55,
+ U2_242X_GPIO56,
+
+ AA10_242X_DMAREQ0,
+ AA6_242X_DMAREQ1,
+ E4_242X_DMAREQ2,
+ G4_242X_DMAREQ3,
+ D3_242X_DMAREQ4,
+ E3_242X_DMAREQ5,
+
+ P20_24XX_TSC_IRQ,
+
+ K15_24XX_UART3_TX,
+ K14_24XX_UART3_RX,
+
+ G19_24XX_MMC_CLKO,
+ H18_24XX_MMC_CMD,
+ F20_24XX_MMC_DAT0,
+ H14_24XX_MMC_DAT1,
+ E19_24XX_MMC_DAT2,
+ D19_24XX_MMC_DAT3,
+ F19_24XX_MMC_DAT_DIR0,
+ E20_24XX_MMC_DAT_DIR1,
+ F18_24XX_MMC_DAT_DIR2,
+ E18_24XX_MMC_DAT_DIR3,
+ G18_24XX_MMC_CMD_DIR,
+ H15_24XX_MMC_CLKI,
+
+ T19_24XX_KBR0,
+ R19_24XX_KBR1,
+ V18_24XX_KBR2,
+ M21_24XX_KBR3,
+ E5__24XX_KBR4,
+ M18_24XX_KBR5,
+ R20_24XX_KBC0,
+ M14_24XX_KBC1,
+ H19_24XX_KBC2,
+ V17_24XX_KBC3,
+ P21_24XX_KBC4,
+ L14_24XX_KBC5,
+ N19_24XX_KBC6,
+
+ B3__24XX_KBR5,
+ AA4_24XX_KBC2,
+ B13_24XX_KBC6,
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/omap24xx.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/omap24xx.h
new file mode 100644
index 0000000..37def2f
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/omap24xx.h
@@ -0,0 +1,30 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP24XX_H
+#define __ASM_ARCH_OMAP24XX_H
+
+#define L4_24XX_BASE 0x48000000
+#define L3_24XX_BASE 0x68000000
+
+#define OMAP24XX_IC_BASE (L4_24XX_BASE + 0xfe000)
+#define VA_IC_BASE IO_ADDRESS(OMAP24XX_IC_BASE)
+#define OMAP24XX_IVA_INTC_BASE 0x40000000
+#define IRQ_SIR_IRQ 0x0040
+
+#define OMAP24XX_32KSYNCT_BASE (L4_24XX_BASE + 0x4000)
+#define OMAP24XX_PRCM_BASE (L4_24XX_BASE + 0x8000)
+#define OMAP24XX_SDRC_BASE (L3_24XX_BASE + 0x9000)
+
+#define OMAP242X_CONTROL_STATUS (L4_24XX_BASE + 0x2f8)
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/serial.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/serial.h
new file mode 100644
index 0000000..6ab8613
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/serial.h
@@ -0,0 +1,21 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_SERIAL_H
+#define __ASM_ARCH_SERIAL_H
+
+#define OMAP_MAX_NR_PORTS 3
+#define OMAP1510_BASE_BAUD (12000000/16)
+#define OMAP16XX_BASE_BAUD (48000000/16)
+
+#define is_omap_port(p) ({int __ret = 0; if (p == IO_ADDRESS(OMAP_UART1_BASE) || p == IO_ADDRESS(OMAP_UART2_BASE) || p == IO_ADDRESS(OMAP_UART3_BASE)) __ret = 1; __ret; })
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/timex.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/timex.h
new file mode 100644
index 0000000..2c9234c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/timex.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_TIMEX_H
+#define __ASM_ARCH_OMAP_TIMEX_H
+
+#define CLOCK_TICK_RATE (HZ * 100000UL)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/vmalloc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/vmalloc.h
new file mode 100644
index 0000000..f2b5b44
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/vmalloc.h
@@ -0,0 +1,13 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#define VMALLOC_END (PAGE_OFFSET + 0x10000000)
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/atomic.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/atomic.h
new file mode 100644
index 0000000..6f1921a
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/atomic.h
@@ -0,0 +1,21 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_ATOMIC_H
+#define __ASM_ARM_ATOMIC_H
+
+#include <linux/compiler.h>
+
+typedef struct { volatile int counter; } atomic_t;
+
+#define ATOMIC_INIT(i) { (i) }
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/auxvec.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/auxvec.h
new file mode 100644
index 0000000..c7e839c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/auxvec.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASMARM_AUXVEC_H
+#define __ASMARM_AUXVEC_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/bitops.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/bitops.h
new file mode 100644
index 0000000..ff76a68
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/bitops.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_BITOPS_H
+#define __ASM_ARM_BITOPS_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/byteorder.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/byteorder.h
new file mode 100644
index 0000000..4da37bf
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/byteorder.h
@@ -0,0 +1,51 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_BYTEORDER_H
+#define __ASM_ARM_BYTEORDER_H
+
+#include <linux/compiler.h>
+#include <asm/types.h>
+
+static inline __attribute_const__ __u32 ___arch__swab32(__u32 x)
+{
+ __u32 t;
+
+#ifndef __thumb__
+ if (!__builtin_constant_p(x)) {
+
+ asm ("eor\t%0, %1, %1, ror #16" : "=r" (t) : "r" (x));
+ } else
+#endif
+ t = x ^ ((x << 16) | (x >> 16));
+
+ x = (x << 24) | (x >> 8);
+ t &= ~0x00FF0000;
+ x ^= (t >> 8);
+
+ return x;
+}
+
+#define __arch__swab32(x) ___arch__swab32(x)
+
+#ifndef __STRICT_ANSI__
+#define __BYTEORDER_HAS_U64__
+#define __SWAB_64_THRU_32__
+#endif
+
+#ifdef __ARMEB__
+#include <linux/byteorder/big_endian.h>
+#else
+#include <linux/byteorder/little_endian.h>
+#endif
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cache.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cache.h
new file mode 100644
index 0000000..be26423
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cache.h
@@ -0,0 +1,18 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASMARM_CACHE_H
+#define __ASMARM_CACHE_H
+
+#define L1_CACHE_SHIFT 5
+#define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cacheflush.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cacheflush.h
new file mode 100644
index 0000000..3ffa87a
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cacheflush.h
@@ -0,0 +1,107 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_CACHEFLUSH_H
+#define _ASMARM_CACHEFLUSH_H
+
+#include <linux/sched.h>
+#include <linux/mm.h>
+
+#include <asm/glue.h>
+#include <asm/shmparam.h>
+
+#define CACHE_COLOUR(vaddr) ((vaddr & (SHMLBA - 1)) >> PAGE_SHIFT)
+
+#undef _CACHE
+#undef MULTI_CACHE
+
+#if !defined(_CACHE) && !defined(MULTI_CACHE)
+#error Unknown cache maintainence model
+#endif
+
+#define PG_dcache_dirty PG_arch_1
+
+struct cpu_cache_fns {
+ void (*flush_kern_all)(void);
+ void (*flush_user_all)(void);
+ void (*flush_user_range)(unsigned long, unsigned long, unsigned int);
+
+ void (*coherent_kern_range)(unsigned long, unsigned long);
+ void (*coherent_user_range)(unsigned long, unsigned long);
+ void (*flush_kern_dcache_page)(void *);
+
+ void (*dma_inv_range)(unsigned long, unsigned long);
+ void (*dma_clean_range)(unsigned long, unsigned long);
+ void (*dma_flush_range)(unsigned long, unsigned long);
+};
+
+#ifdef MULTI_CACHE
+
+#define __cpuc_flush_kern_all cpu_cache.flush_kern_all
+#define __cpuc_flush_user_all cpu_cache.flush_user_all
+#define __cpuc_flush_user_range cpu_cache.flush_user_range
+#define __cpuc_coherent_kern_range cpu_cache.coherent_kern_range
+#define __cpuc_coherent_user_range cpu_cache.coherent_user_range
+#define __cpuc_flush_dcache_page cpu_cache.flush_kern_dcache_page
+
+#define dmac_inv_range cpu_cache.dma_inv_range
+#define dmac_clean_range cpu_cache.dma_clean_range
+#define dmac_flush_range cpu_cache.dma_flush_range
+
+#else
+
+#define __cpuc_flush_kern_all __glue(_CACHE,_flush_kern_cache_all)
+#define __cpuc_flush_user_all __glue(_CACHE,_flush_user_cache_all)
+#define __cpuc_flush_user_range __glue(_CACHE,_flush_user_cache_range)
+#define __cpuc_coherent_kern_range __glue(_CACHE,_coherent_kern_range)
+#define __cpuc_coherent_user_range __glue(_CACHE,_coherent_user_range)
+#define __cpuc_flush_dcache_page __glue(_CACHE,_flush_kern_dcache_page)
+
+#define dmac_inv_range __glue(_CACHE,_dma_inv_range)
+#define dmac_clean_range __glue(_CACHE,_dma_clean_range)
+#define dmac_flush_range __glue(_CACHE,_dma_flush_range)
+
+#endif
+
+#define flush_cache_vmap(start, end) flush_cache_all()
+#define flush_cache_vunmap(start, end) flush_cache_all()
+
+#define copy_to_user_page(vma, page, vaddr, dst, src, len) do { memcpy(dst, src, len); flush_ptrace_access(vma, page, vaddr, dst, len, 1); } while (0)
+
+#define copy_from_user_page(vma, page, vaddr, dst, src, len) do { memcpy(dst, src, len); } while (0)
+
+#define flush_cache_all() __cpuc_flush_kern_all()
+#define flush_cache_user_range(vma,start,end) __cpuc_coherent_user_range((start) & PAGE_MASK, PAGE_ALIGN(end))
+#define flush_icache_range(s,e) __cpuc_coherent_kern_range(s,e)
+#define clean_dcache_area(start,size) cpu_dcache_clean_area(start, size)
+
+#define flush_dcache_mmap_lock(mapping) write_lock_irq(&(mapping)->tree_lock)
+#define flush_dcache_mmap_unlock(mapping) write_unlock_irq(&(mapping)->tree_lock)
+
+#define flush_icache_user_range(vma,page,addr,len) flush_dcache_page(page)
+
+#define flush_icache_page(vma,page) do { } while (0)
+
+#define __cacheid_present(val) (val != read_cpuid(CPUID_ID))
+#define __cacheid_vivt(val) ((val & (15 << 25)) != (14 << 25))
+#define __cacheid_vipt(val) ((val & (15 << 25)) == (14 << 25))
+#define __cacheid_vipt_nonaliasing(val) ((val & (15 << 25 | 1 << 23)) == (14 << 25))
+#define __cacheid_vipt_aliasing(val) ((val & (15 << 25 | 1 << 23)) == (14 << 25 | 1 << 23))
+
+#define cache_is_vivt() ({ unsigned int __val = read_cpuid(CPUID_CACHETYPE); (!__cacheid_present(__val)) || __cacheid_vivt(__val); })
+
+#define cache_is_vipt() ({ unsigned int __val = read_cpuid(CPUID_CACHETYPE); __cacheid_present(__val) && __cacheid_vipt(__val); })
+
+#define cache_is_vipt_nonaliasing() ({ unsigned int __val = read_cpuid(CPUID_CACHETYPE); __cacheid_present(__val) && __cacheid_vipt_nonaliasing(__val); })
+
+#define cache_is_vipt_aliasing() ({ unsigned int __val = read_cpuid(CPUID_CACHETYPE); __cacheid_present(__val) && __cacheid_vipt_aliasing(__val); })
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cputime.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cputime.h
new file mode 100644
index 0000000..4a4097f
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cputime.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARM_CPUTIME_H
+#define __ARM_CPUTIME_H
+
+#include <asm-generic/cputime.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/delay.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/delay.h
new file mode 100644
index 0000000..631fd9b
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/delay.h
@@ -0,0 +1,22 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_DELAY_H
+#define __ASM_ARM_DELAY_H
+
+#include <asm/param.h>
+
+#define MAX_UDELAY_MS 2
+
+#define udelay(n) (__builtin_constant_p(n) ? ((n) > (MAX_UDELAY_MS * 1000) ? __bad_udelay() : __const_udelay((n) * ((2199023U*HZ)>>11))) : __udelay(n))
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/div64.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/div64.h
new file mode 100644
index 0000000..c03a0e4
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/div64.h
@@ -0,0 +1,27 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_DIV64
+#define __ASM_ARM_DIV64
+
+#include <asm/system.h>
+
+#ifdef __ARMEB__
+#define __xh "r0"
+#define __xl "r1"
+#else
+#define __xl "r0"
+#define __xh "r1"
+#endif
+
+#define do_div(n,base) ({ register unsigned int __base asm("r4") = base; register unsigned long long __n asm("r0") = n; register unsigned long long __res asm("r2"); register unsigned int __rem asm(__xh); asm( __asmeq("%0", __xh) __asmeq("%1", "r2") __asmeq("%2", "r0") __asmeq("%3", "r4") "bl __do_div64" : "=r" (__rem), "=r" (__res) : "r" (__n), "r" (__base) : "ip", "lr", "cc"); n = __res; __rem; })
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dma-mapping.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dma-mapping.h
new file mode 100644
index 0000000..7e65009
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dma-mapping.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef ASMARM_DMA_MAPPING_H
+#define ASMARM_DMA_MAPPING_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dma.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dma.h
new file mode 100644
index 0000000..7eeeb78
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dma.h
@@ -0,0 +1,45 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_DMA_H
+#define __ASM_ARM_DMA_H
+
+typedef unsigned int dmach_t;
+
+#include <linux/spinlock.h>
+#include <asm/system.h>
+#include <asm/scatterlist.h>
+#include <asm/arch/dma.h>
+
+#ifndef MAX_DMA_ADDRESS
+#define MAX_DMA_ADDRESS 0xffffffff
+#endif
+
+typedef unsigned int dmamode_t;
+
+#define DMA_MODE_MASK 3
+
+#define DMA_MODE_READ 0
+#define DMA_MODE_WRITE 1
+#define DMA_MODE_CASCADE 2
+#define DMA_AUTOINIT 4
+
+#define clear_dma_ff(channel)
+
+#define set_dma_addr(channel, addr) __set_dma_addr(channel, bus_to_virt(addr))
+
+#ifndef NO_DMA
+#define NO_DMA 255
+#endif
+
+#define isa_dma_bridge_buggy (0)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/domain.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/domain.h
new file mode 100644
index 0000000..973109e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/domain.h
@@ -0,0 +1,32 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_PROC_DOMAIN_H
+#define __ASM_PROC_DOMAIN_H
+
+#define DOMAIN_KERNEL 0
+#define DOMAIN_TABLE 0
+#define DOMAIN_USER 1
+#define DOMAIN_IO 2
+
+#define DOMAIN_NOACCESS 0
+#define DOMAIN_CLIENT 1
+#define DOMAIN_MANAGER 3
+
+#define domain_val(dom,type) ((type) << (2*(dom)))
+
+#ifndef __ASSEMBLY__
+
+#define set_domain(x) do { } while (0)
+#define modify_domain(dom,type) do { } while (0)
+
+#endif
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dyntick.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dyntick.h
new file mode 100644
index 0000000..1f323f2
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dyntick.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_DYNTICK_H
+#define _ASMARM_DYNTICK_H
+
+#include <asm/mach/time.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/elf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/elf.h
new file mode 100644
index 0000000..e9d095e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/elf.h
@@ -0,0 +1,63 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASMARM_ELF_H
+#define __ASMARM_ELF_H
+
+#include <asm/ptrace.h>
+#include <asm/user.h>
+#ifdef __KERNEL
+#include <asm/procinfo.h>
+#endif
+
+typedef unsigned long elf_greg_t;
+typedef unsigned long elf_freg_t[3];
+
+#define EM_ARM 40
+#define EF_ARM_APCS26 0x08
+#define EF_ARM_SOFT_FLOAT 0x200
+#define EF_ARM_EABI_MASK 0xFF000000
+
+#define R_ARM_NONE 0
+#define R_ARM_PC24 1
+#define R_ARM_ABS32 2
+#define R_ARM_CALL 28
+#define R_ARM_JUMP24 29
+
+#define ELF_NGREG (sizeof (struct pt_regs) / sizeof(elf_greg_t))
+typedef elf_greg_t elf_gregset_t[ELF_NGREG];
+
+typedef struct user_fp elf_fpregset_t;
+
+#define elf_check_arch(x) ( ((x)->e_machine == EM_ARM) && (ELF_PROC_OK((x))) )
+
+#define ELF_CLASS ELFCLASS32
+#ifdef __ARMEB__
+#define ELF_DATA ELFDATA2MSB
+#else
+#define ELF_DATA ELFDATA2LSB
+#endif
+#define ELF_ARCH EM_ARM
+
+#define USE_ELF_CORE_DUMP
+#define ELF_EXEC_PAGESIZE 4096
+
+#define ELF_ET_DYN_BASE (2 * TASK_SIZE / 3)
+
+#define ELF_PLAT_INIT(_r, load_addr) (_r)->ARM_r0 = 0
+
+#define ELF_HWCAP (elf_hwcap)
+
+#define ELF_PLATFORM_SIZE 8
+
+#define ELF_PLATFORM (elf_platform)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/errno.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/errno.h
new file mode 100644
index 0000000..6be7048
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/errno.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ARM_ERRNO_H
+#define _ARM_ERRNO_H
+
+#include <asm-generic/errno.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/fcntl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/fcntl.h
new file mode 100644
index 0000000..42351ea
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/fcntl.h
@@ -0,0 +1,22 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ARM_FCNTL_H
+#define _ARM_FCNTL_H
+
+#define O_DIRECTORY 040000
+#define O_NOFOLLOW 0100000
+#define O_DIRECT 0200000
+#define O_LARGEFILE 0400000
+
+#include <asm-generic/fcntl.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/fpstate.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/fpstate.h
new file mode 100644
index 0000000..b362b14
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/fpstate.h
@@ -0,0 +1,68 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_FPSTATE_H
+#define __ASM_ARM_FPSTATE_H
+
+#ifndef __ASSEMBLY__
+
+struct vfp_hard_struct {
+ __u64 fpregs[16];
+#if __LINUX_ARM_ARCH__ < 6
+ __u32 fpmx_state;
+#endif
+ __u32 fpexc;
+ __u32 fpscr;
+
+ __u32 fpinst;
+ __u32 fpinst2;
+};
+
+union vfp_state {
+ struct vfp_hard_struct hard;
+};
+
+#define FP_HARD_SIZE 35
+
+struct fp_hard_struct {
+ unsigned int save[FP_HARD_SIZE];
+};
+
+#define FP_SOFT_SIZE 35
+
+struct fp_soft_struct {
+ unsigned int save[FP_SOFT_SIZE];
+};
+
+#define IWMMXT_SIZE 0x98
+
+struct iwmmxt_struct {
+ unsigned int save[IWMMXT_SIZE / sizeof(unsigned int)];
+};
+
+union fp_state {
+ struct fp_hard_struct hard;
+ struct fp_soft_struct soft;
+};
+
+#define FP_SIZE (sizeof(union fp_state) / sizeof(int))
+
+struct crunch_state {
+ unsigned int mvdx[16][2];
+ unsigned int mvax[4][3];
+ unsigned int dspsc[2];
+};
+
+#define CRUNCH_SIZE sizeof(struct crunch_state)
+
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/audit_dir_write.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/glue.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/audit_dir_write.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm/glue.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hardirq.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hardirq.h
new file mode 100644
index 0000000..54207e3
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hardirq.h
@@ -0,0 +1,38 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_HARDIRQ_H
+#define __ASM_HARDIRQ_H
+
+#include <linux/cache.h>
+#include <linux/threads.h>
+#include <asm/irq.h>
+
+typedef struct {
+ unsigned int __softirq_pending;
+ unsigned int local_timer_irqs;
+} ____cacheline_aligned irq_cpustat_t;
+
+#include <linux/irq_cpustat.h>
+
+#if NR_IRQS > 256
+#define HARDIRQ_BITS 9
+#else
+#define HARDIRQ_BITS 8
+#endif
+
+#if 1 << HARDIRQ_BITS < NR_IRQS
+#error HARDIRQ_BITS is too low!
+#endif
+
+#define __ARCH_IRQ_EXIT_IRQS_DISABLED 1
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hardware.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hardware.h
new file mode 100644
index 0000000..0b381d1
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hardware.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_HARDWARE_H
+#define __ASM_HARDWARE_H
+
+#include <asm/arch/hardware.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hw_irq.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hw_irq.h
new file mode 100644
index 0000000..a34b390
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hw_irq.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ARCH_ARM_HW_IRQ_H
+#define _ARCH_ARM_HW_IRQ_H
+
+#include <asm/mach/irq.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ide.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ide.h
new file mode 100644
index 0000000..f52d5ca
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ide.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASMARM_IDE_H
+#define __ASMARM_IDE_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/io.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/io.h
new file mode 100644
index 0000000..6794022
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/io.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_IO_H
+#define __ASM_ARM_IO_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ioctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ioctl.h
new file mode 100644
index 0000000..6e446b6
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ioctl.h
@@ -0,0 +1,12 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#include <asm-generic/ioctl.h>
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ioctls.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ioctls.h
new file mode 100644
index 0000000..9df82bc
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ioctls.h
@@ -0,0 +1,88 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_IOCTLS_H
+#define __ASM_ARM_IOCTLS_H
+
+#include <asm/ioctl.h>
+
+#define TCGETS 0x5401
+#define TCSETS 0x5402
+#define TCSETSW 0x5403
+#define TCSETSF 0x5404
+#define TCGETA 0x5405
+#define TCSETA 0x5406
+#define TCSETAW 0x5407
+#define TCSETAF 0x5408
+#define TCSBRK 0x5409
+#define TCXONC 0x540A
+#define TCFLSH 0x540B
+#define TIOCEXCL 0x540C
+#define TIOCNXCL 0x540D
+#define TIOCSCTTY 0x540E
+#define TIOCGPGRP 0x540F
+#define TIOCSPGRP 0x5410
+#define TIOCOUTQ 0x5411
+#define TIOCSTI 0x5412
+#define TIOCGWINSZ 0x5413
+#define TIOCSWINSZ 0x5414
+#define TIOCMGET 0x5415
+#define TIOCMBIS 0x5416
+#define TIOCMBIC 0x5417
+#define TIOCMSET 0x5418
+#define TIOCGSOFTCAR 0x5419
+#define TIOCSSOFTCAR 0x541A
+#define FIONREAD 0x541B
+#define TIOCINQ FIONREAD
+#define TIOCLINUX 0x541C
+#define TIOCCONS 0x541D
+#define TIOCGSERIAL 0x541E
+#define TIOCSSERIAL 0x541F
+#define TIOCPKT 0x5420
+#define FIONBIO 0x5421
+#define TIOCNOTTY 0x5422
+#define TIOCSETD 0x5423
+#define TIOCGETD 0x5424
+#define TCSBRKP 0x5425
+#define TIOCSBRK 0x5427
+#define TIOCCBRK 0x5428
+#define TIOCGSID 0x5429
+#define TIOCGPTN _IOR('T',0x30, unsigned int)
+#define TIOCSPTLCK _IOW('T',0x31, int)
+
+#define FIONCLEX 0x5450
+#define FIOCLEX 0x5451
+#define FIOASYNC 0x5452
+#define TIOCSERCONFIG 0x5453
+#define TIOCSERGWILD 0x5454
+#define TIOCSERSWILD 0x5455
+#define TIOCGLCKTRMIOS 0x5456
+#define TIOCSLCKTRMIOS 0x5457
+#define TIOCSERGSTRUCT 0x5458
+#define TIOCSERGETLSR 0x5459
+#define TIOCSERGETMULTI 0x545A
+#define TIOCSERSETMULTI 0x545B
+
+#define TIOCMIWAIT 0x545C
+#define TIOCGICOUNT 0x545D
+#define FIOQSIZE 0x545E
+
+#define TIOCPKT_DATA 0
+#define TIOCPKT_FLUSHREAD 1
+#define TIOCPKT_FLUSHWRITE 2
+#define TIOCPKT_STOP 4
+#define TIOCPKT_START 8
+#define TIOCPKT_NOSTOP 16
+#define TIOCPKT_DOSTOP 32
+
+#define TIOCSER_TEMT 0x01
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ipcbuf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ipcbuf.h
new file mode 100644
index 0000000..0e47507
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ipcbuf.h
@@ -0,0 +1,30 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASMARM_IPCBUF_H
+#define __ASMARM_IPCBUF_H
+
+struct ipc64_perm
+{
+ __kernel_key_t key;
+ __kernel_uid32_t uid;
+ __kernel_gid32_t gid;
+ __kernel_uid32_t cuid;
+ __kernel_gid32_t cgid;
+ __kernel_mode_t mode;
+ unsigned short __pad1;
+ unsigned short seq;
+ unsigned short __pad2;
+ unsigned long __unused1;
+ unsigned long __unused2;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/irq.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/irq.h
new file mode 100644
index 0000000..2085a21
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/irq.h
@@ -0,0 +1,45 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_IRQ_H
+#define __ASM_ARM_IRQ_H
+
+#include <asm/arch/irqs.h>
+
+#ifndef irq_canonicalize
+#define irq_canonicalize(i) (i)
+#endif
+
+#ifndef NR_IRQS
+#define NR_IRQS 128
+#endif
+
+#ifndef NO_IRQ
+#define NO_IRQ ((unsigned int)(-1))
+#endif
+
+struct irqaction;
+
+#define __IRQT_FALEDGE IRQ_TYPE_EDGE_FALLING
+#define __IRQT_RISEDGE IRQ_TYPE_EDGE_RISING
+#define __IRQT_LOWLVL IRQ_TYPE_LEVEL_LOW
+#define __IRQT_HIGHLVL IRQ_TYPE_LEVEL_HIGH
+
+#define IRQT_NOEDGE (0)
+#define IRQT_RISING (__IRQT_RISEDGE)
+#define IRQT_FALLING (__IRQT_FALEDGE)
+#define IRQT_BOTHEDGE (__IRQT_RISEDGE|__IRQT_FALEDGE)
+#define IRQT_LOW (__IRQT_LOWLVL)
+#define IRQT_HIGH (__IRQT_HIGHLVL)
+#define IRQT_PROBE IRQ_TYPE_PROBE
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/linkage.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/linkage.h
new file mode 100644
index 0000000..1fb628e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/linkage.h
@@ -0,0 +1,18 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_LINKAGE_H
+#define __ASM_LINKAGE_H
+
+#define __ALIGN .align 0
+#define __ALIGN_STR ".align 0"
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/local.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/local.h
new file mode 100644
index 0000000..10d6a60
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/local.h
@@ -0,0 +1,12 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#include <asm-generic/local.h>
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/locks.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/locks.h
new file mode 100644
index 0000000..f48485c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/locks.h
@@ -0,0 +1,55 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_PROC_LOCKS_H
+#define __ASM_PROC_LOCKS_H
+
+#if __LINUX_ARM_ARCH__ >= 6
+
+#define __down_op(ptr,fail) ({ __asm__ __volatile__( "@ down_op\n" "1: ldrex lr, [%0]\n" " sub lr, lr, %1\n" " strex ip, lr, [%0]\n" " teq ip, #0\n" " bne 1b\n" " teq lr, #0\n" " movmi ip, %0\n" " blmi " #fail : : "r" (ptr), "I" (1) : "ip", "lr", "cc"); smp_mb(); })
+
+#define __down_op_ret(ptr,fail) ({ unsigned int ret; __asm__ __volatile__( "@ down_op_ret\n" "1: ldrex lr, [%1]\n" " sub lr, lr, %2\n" " strex ip, lr, [%1]\n" " teq ip, #0\n" " bne 1b\n" " teq lr, #0\n" " movmi ip, %1\n" " movpl ip, #0\n" " blmi " #fail "\n" " mov %0, ip" : "=&r" (ret) : "r" (ptr), "I" (1) : "ip", "lr", "cc"); smp_mb(); ret; })
+
+#define __up_op(ptr,wake) ({ smp_mb(); __asm__ __volatile__( "@ up_op\n" "1: ldrex lr, [%0]\n" " add lr, lr, %1\n" " strex ip, lr, [%0]\n" " teq ip, #0\n" " bne 1b\n" " cmp lr, #0\n" " movle ip, %0\n" " blle " #wake : : "r" (ptr), "I" (1) : "ip", "lr", "cc"); })
+
+#define RW_LOCK_BIAS 0x01000000
+#define RW_LOCK_BIAS_STR "0x01000000"
+
+#define __down_op_write(ptr,fail) ({ __asm__ __volatile__( "@ down_op_write\n" "1: ldrex lr, [%0]\n" " sub lr, lr, %1\n" " strex ip, lr, [%0]\n" " teq ip, #0\n" " bne 1b\n" " teq lr, #0\n" " movne ip, %0\n" " blne " #fail : : "r" (ptr), "I" (RW_LOCK_BIAS) : "ip", "lr", "cc"); smp_mb(); })
+
+#define __up_op_write(ptr,wake) ({ smp_mb(); __asm__ __volatile__( "@ up_op_write\n" "1: ldrex lr, [%0]\n" " adds lr, lr, %1\n" " strex ip, lr, [%0]\n" " teq ip, #0\n" " bne 1b\n" " movcs ip, %0\n" " blcs " #wake : : "r" (ptr), "I" (RW_LOCK_BIAS) : "ip", "lr", "cc"); })
+
+#define __down_op_read(ptr,fail) __down_op(ptr, fail)
+
+#define __up_op_read(ptr,wake) ({ smp_mb(); __asm__ __volatile__( "@ up_op_read\n" "1: ldrex lr, [%0]\n" " add lr, lr, %1\n" " strex ip, lr, [%0]\n" " teq ip, #0\n" " bne 1b\n" " teq lr, #0\n" " moveq ip, %0\n" " bleq " #wake : : "r" (ptr), "I" (1) : "ip", "lr", "cc"); })
+
+#else
+
+#define __down_op(ptr,fail) ({ __asm__ __volatile__( "@ down_op\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%0]\n" " subs lr, lr, %1\n" " str lr, [%0]\n" " msr cpsr_c, ip\n" " movmi ip, %0\n" " blmi " #fail : : "r" (ptr), "I" (1) : "ip", "lr", "cc"); smp_mb(); })
+
+#define __down_op_ret(ptr,fail) ({ unsigned int ret; __asm__ __volatile__( "@ down_op_ret\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%1]\n" " subs lr, lr, %2\n" " str lr, [%1]\n" " msr cpsr_c, ip\n" " movmi ip, %1\n" " movpl ip, #0\n" " blmi " #fail "\n" " mov %0, ip" : "=&r" (ret) : "r" (ptr), "I" (1) : "ip", "lr", "cc"); smp_mb(); ret; })
+
+#define __up_op(ptr,wake) ({ smp_mb(); __asm__ __volatile__( "@ up_op\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%0]\n" " adds lr, lr, %1\n" " str lr, [%0]\n" " msr cpsr_c, ip\n" " movle ip, %0\n" " blle " #wake : : "r" (ptr), "I" (1) : "ip", "lr", "cc"); })
+
+#define RW_LOCK_BIAS 0x01000000
+#define RW_LOCK_BIAS_STR "0x01000000"
+
+#define __down_op_write(ptr,fail) ({ __asm__ __volatile__( "@ down_op_write\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%0]\n" " subs lr, lr, %1\n" " str lr, [%0]\n" " msr cpsr_c, ip\n" " movne ip, %0\n" " blne " #fail : : "r" (ptr), "I" (RW_LOCK_BIAS) : "ip", "lr", "cc"); smp_mb(); })
+
+#define __up_op_write(ptr,wake) ({ __asm__ __volatile__( "@ up_op_write\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%0]\n" " adds lr, lr, %1\n" " str lr, [%0]\n" " msr cpsr_c, ip\n" " movcs ip, %0\n" " blcs " #wake : : "r" (ptr), "I" (RW_LOCK_BIAS) : "ip", "lr", "cc"); smp_mb(); })
+
+#define __down_op_read(ptr,fail) __down_op(ptr, fail)
+
+#define __up_op_read(ptr,wake) ({ smp_mb(); __asm__ __volatile__( "@ up_op_read\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%0]\n" " adds lr, lr, %1\n" " str lr, [%0]\n" " msr cpsr_c, ip\n" " moveq ip, %0\n" " bleq " #wake : : "r" (ptr), "I" (1) : "ip", "lr", "cc"); })
+
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mc146818rtc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mc146818rtc.h
new file mode 100644
index 0000000..5a86724
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mc146818rtc.h
@@ -0,0 +1,26 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASM_MC146818RTC_H
+#define _ASM_MC146818RTC_H
+
+#include <asm/arch/irqs.h>
+#include <asm/io.h>
+
+#ifndef RTC_PORT
+#define RTC_PORT(x) (0x70 + (x))
+#define RTC_ALWAYS_BCD 1
+#endif
+
+#define CMOS_READ(addr) ({ outb_p((addr),RTC_PORT(0)); inb_p(RTC_PORT(1)); })
+#define CMOS_WRITE(val, addr) ({ outb_p((addr),RTC_PORT(0)); outb_p((val),RTC_PORT(1)); })
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/memory.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/memory.h
new file mode 100644
index 0000000..c1137a7
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/memory.h
@@ -0,0 +1,95 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_MEMORY_H
+#define __ASM_ARM_MEMORY_H
+
+#ifndef __ASSEMBLY__
+#define UL(x) (x##UL)
+#else
+#define UL(x) (x)
+#endif
+
+#include <linux/compiler.h>
+#include <asm/arch/memory.h>
+#include <asm/sizes.h>
+
+#ifndef TASK_SIZE
+#define TASK_SIZE (CONFIG_DRAM_SIZE)
+#endif
+
+#ifndef TASK_UNMAPPED_BASE
+#define TASK_UNMAPPED_BASE UL(0x00000000)
+#endif
+
+#ifndef PHYS_OFFSET
+#define PHYS_OFFSET (CONFIG_DRAM_BASE)
+#endif
+
+#ifndef END_MEM
+#define END_MEM (CONFIG_DRAM_BASE + CONFIG_DRAM_SIZE)
+#endif
+
+#ifndef PAGE_OFFSET
+#define PAGE_OFFSET (PHYS_OFFSET)
+#endif
+
+#define MODULE_END (END_MEM)
+#define MODULE_START (PHYS_OFFSET)
+
+#ifndef CONSISTENT_DMA_SIZE
+#define CONSISTENT_DMA_SIZE SZ_2M
+#endif
+
+#ifndef __virt_to_phys
+#define __virt_to_phys(x) ((x) - PAGE_OFFSET + PHYS_OFFSET)
+#define __phys_to_virt(x) ((x) - PHYS_OFFSET + PAGE_OFFSET)
+#endif
+
+#define __phys_to_pfn(paddr) ((paddr) >> PAGE_SHIFT)
+#define __pfn_to_phys(pfn) ((pfn) << PAGE_SHIFT)
+
+#ifndef __ASSEMBLY__
+
+#ifndef ISA_DMA_THRESHOLD
+#define ISA_DMA_THRESHOLD (0xffffffffULL)
+#endif
+
+#ifndef arch_adjust_zones
+#define arch_adjust_zones(node,size,holes) do { } while (0)
+#endif
+
+#define PHYS_PFN_OFFSET (PHYS_OFFSET >> PAGE_SHIFT)
+
+#define __pa(x) __virt_to_phys((unsigned long)(x))
+#define __va(x) ((void *)__phys_to_virt((unsigned long)(x)))
+#define pfn_to_kaddr(pfn) __va((pfn) << PAGE_SHIFT)
+#define ARCH_PFN_OFFSET PHYS_PFN_OFFSET
+#define pfn_valid(pfn) ((pfn) >= PHYS_PFN_OFFSET && (pfn) < (PHYS_PFN_OFFSET + max_mapnr))
+#define virt_to_page(kaddr) pfn_to_page(__pa(kaddr) >> PAGE_SHIFT)
+#define virt_addr_valid(kaddr) ((unsigned long)(kaddr) >= PAGE_OFFSET && (unsigned long)(kaddr) < (unsigned long)high_memory)
+#define PHYS_TO_NID(addr) (0)
+#define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT)
+#ifndef __arch_page_to_dma
+#define page_to_dma(dev, page) ((dma_addr_t)__virt_to_bus((unsigned long)page_address(page)))
+#define dma_to_virt(dev, addr) ((void *)__bus_to_virt(addr))
+#define virt_to_dma(dev, addr) ((dma_addr_t)__virt_to_bus((unsigned long)(addr)))
+#else
+#define page_to_dma(dev, page) (__arch_page_to_dma(dev, page))
+#define dma_to_virt(dev, addr) (__arch_dma_to_virt(dev, addr))
+#define virt_to_dma(dev, addr) (__arch_virt_to_dma(dev, addr))
+#endif
+#ifndef arch_is_coherent
+#define arch_is_coherent() 0
+#endif
+#endif
+#include <asm-generic/memory_model.h>
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mman.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mman.h
new file mode 100644
index 0000000..8f71d1b
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mman.h
@@ -0,0 +1,28 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARM_MMAN_H__
+#define __ARM_MMAN_H__
+
+#include <asm-generic/mman.h>
+
+#define MAP_GROWSDOWN 0x0100
+#define MAP_DENYWRITE 0x0800
+#define MAP_EXECUTABLE 0x1000
+#define MAP_LOCKED 0x2000
+#define MAP_NORESERVE 0x4000
+#define MAP_POPULATE 0x8000
+#define MAP_NONBLOCK 0x10000
+
+#define MCL_CURRENT 1
+#define MCL_FUTURE 2
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/module.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/module.h
new file mode 100644
index 0000000..68b806a
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/module.h
@@ -0,0 +1,26 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASM_ARM_MODULE_H
+#define _ASM_ARM_MODULE_H
+
+struct mod_arch_specific
+{
+ int foo;
+};
+
+#define Elf_Shdr Elf32_Shdr
+#define Elf_Sym Elf32_Sym
+#define Elf_Ehdr Elf32_Ehdr
+
+#define MODULE_ARCH_VERMAGIC "ARMv" __stringify(__LINUX_ARM_ARCH__) " "
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/msgbuf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/msgbuf.h
new file mode 100644
index 0000000..84d614c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/msgbuf.h
@@ -0,0 +1,32 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_MSGBUF_H
+#define _ASMARM_MSGBUF_H
+
+struct msqid64_ds {
+ struct ipc64_perm msg_perm;
+ __kernel_time_t msg_stime;
+ unsigned long __unused1;
+ __kernel_time_t msg_rtime;
+ unsigned long __unused2;
+ __kernel_time_t msg_ctime;
+ unsigned long __unused3;
+ unsigned long msg_cbytes;
+ unsigned long msg_qnum;
+ unsigned long msg_qbytes;
+ __kernel_pid_t msg_lspid;
+ __kernel_pid_t msg_lrpid;
+ unsigned long __unused4;
+ unsigned long __unused5;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mtd-xip.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mtd-xip.h
new file mode 100644
index 0000000..6c53f6f
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mtd-xip.h
@@ -0,0 +1,20 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARM_MTD_XIP_H__
+#define __ARM_MTD_XIP_H__
+
+#include <asm/hardware.h>
+#include <asm/arch/mtd-xip.h>
+
+#define xip_iprefetch() do { asm volatile (".rep 8; nop; .endr"); } while (0)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/page.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/page.h
new file mode 100644
index 0000000..f980343
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/page.h
@@ -0,0 +1,19 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_PAGE_H
+#define _ASMARM_PAGE_H
+
+#define PAGE_SHIFT 12
+#define PAGE_SIZE (1UL << PAGE_SHIFT)
+#define PAGE_MASK (~(PAGE_SIZE-1))
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/param.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/param.h
new file mode 100644
index 0000000..6814fe3
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/param.h
@@ -0,0 +1,25 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_PARAM_H
+#define __ASM_PARAM_H
+
+#define HZ 100
+
+#define EXEC_PAGESIZE 4096
+
+#ifndef NOGROUP
+#define NOGROUP (-1)
+#endif
+
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/percpu.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/percpu.h
new file mode 100644
index 0000000..2500345
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/percpu.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARM_PERCPU
+#define __ARM_PERCPU
+
+#include <asm-generic/percpu.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgalloc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgalloc.h
new file mode 100644
index 0000000..5d45e65
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgalloc.h
@@ -0,0 +1,23 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_PGALLOC_H
+#define _ASMARM_PGALLOC_H
+
+#include <asm/domain.h>
+#include <asm/pgtable-hwdef.h>
+#include <asm/processor.h>
+#include <asm/cacheflush.h>
+#include <asm/tlbflush.h>
+
+#define check_pgt_cache() do { } while (0)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgtable-hwdef.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgtable-hwdef.h
new file mode 100644
index 0000000..47e8675
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgtable-hwdef.h
@@ -0,0 +1,70 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_PGTABLE_HWDEF_H
+#define _ASMARM_PGTABLE_HWDEF_H
+
+#define PMD_TYPE_MASK (3 << 0)
+#define PMD_TYPE_FAULT (0 << 0)
+#define PMD_TYPE_TABLE (1 << 0)
+#define PMD_TYPE_SECT (2 << 0)
+#define PMD_BIT4 (1 << 4)
+#define PMD_DOMAIN(x) ((x) << 5)
+#define PMD_PROTECTION (1 << 9)
+
+#define PMD_SECT_BUFFERABLE (1 << 2)
+#define PMD_SECT_CACHEABLE (1 << 3)
+#define PMD_SECT_XN (1 << 4)
+#define PMD_SECT_AP_WRITE (1 << 10)
+#define PMD_SECT_AP_READ (1 << 11)
+#define PMD_SECT_TEX(x) ((x) << 12)
+#define PMD_SECT_APX (1 << 15)
+#define PMD_SECT_S (1 << 16)
+#define PMD_SECT_nG (1 << 17)
+#define PMD_SECT_SUPER (1 << 18)
+
+#define PMD_SECT_UNCACHED (0)
+#define PMD_SECT_BUFFERED (PMD_SECT_BUFFERABLE)
+#define PMD_SECT_WT (PMD_SECT_CACHEABLE)
+#define PMD_SECT_WB (PMD_SECT_CACHEABLE | PMD_SECT_BUFFERABLE)
+#define PMD_SECT_MINICACHE (PMD_SECT_TEX(1) | PMD_SECT_CACHEABLE)
+#define PMD_SECT_WBWA (PMD_SECT_TEX(1) | PMD_SECT_CACHEABLE | PMD_SECT_BUFFERABLE)
+#define PMD_SECT_NONSHARED_DEV (PMD_SECT_TEX(2))
+
+#define PTE_TYPE_MASK (3 << 0)
+#define PTE_TYPE_FAULT (0 << 0)
+#define PTE_TYPE_LARGE (1 << 0)
+#define PTE_TYPE_SMALL (2 << 0)
+#define PTE_TYPE_EXT (3 << 0)
+#define PTE_BUFFERABLE (1 << 2)
+#define PTE_CACHEABLE (1 << 3)
+
+#define PTE_EXT_XN (1 << 0)
+#define PTE_EXT_AP_MASK (3 << 4)
+#define PTE_EXT_AP0 (1 << 4)
+#define PTE_EXT_AP1 (2 << 4)
+#define PTE_EXT_AP_UNO_SRO (0 << 4)
+#define PTE_EXT_AP_UNO_SRW (PTE_EXT_AP0)
+#define PTE_EXT_AP_URO_SRW (PTE_EXT_AP1)
+#define PTE_EXT_AP_URW_SRW (PTE_EXT_AP1|PTE_EXT_AP0)
+#define PTE_EXT_TEX(x) ((x) << 6)
+#define PTE_EXT_APX (1 << 9)
+#define PTE_EXT_COHERENT (1 << 9)
+#define PTE_EXT_SHARED (1 << 10)
+#define PTE_EXT_NG (1 << 11)
+
+#define PTE_SMALL_AP_MASK (0xff << 4)
+#define PTE_SMALL_AP_UNO_SRO (0x00 << 4)
+#define PTE_SMALL_AP_UNO_SRW (0x55 << 4)
+#define PTE_SMALL_AP_URO_SRW (0xaa << 4)
+#define PTE_SMALL_AP_URW_SRW (0xff << 4)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgtable.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgtable.h
new file mode 100644
index 0000000..cbac611
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgtable.h
@@ -0,0 +1,20 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_PGTABLE_H
+#define _ASMARM_PGTABLE_H
+
+#include <asm-generic/4level-fixup.h>
+#include <asm/proc-fns.h>
+
+#include "pgtable-nommu.h"
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/poll.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/poll.h
new file mode 100644
index 0000000..c5b80a5
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/poll.h
@@ -0,0 +1,36 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASMARM_POLL_H
+#define __ASMARM_POLL_H
+
+#define POLLIN 0x0001
+#define POLLPRI 0x0002
+#define POLLOUT 0x0004
+#define POLLERR 0x0008
+#define POLLHUP 0x0010
+#define POLLNVAL 0x0020
+
+#define POLLRDNORM 0x0040
+#define POLLRDBAND 0x0080
+#define POLLWRNORM 0x0100
+#define POLLWRBAND 0x0200
+#define POLLMSG 0x0400
+#define POLLREMOVE 0x1000
+#define POLLRDHUP 0x2000
+
+struct pollfd {
+ int fd;
+ short events;
+ short revents;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/posix_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/posix_types.h
new file mode 100644
index 0000000..bc85217
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/posix_types.h
@@ -0,0 +1,70 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARCH_ARM_POSIX_TYPES_H
+#define __ARCH_ARM_POSIX_TYPES_H
+
+typedef unsigned long __kernel_ino_t;
+typedef unsigned short __kernel_mode_t;
+typedef unsigned short __kernel_nlink_t;
+typedef long __kernel_off_t;
+typedef int __kernel_pid_t;
+typedef unsigned short __kernel_ipc_pid_t;
+typedef unsigned short __kernel_uid_t;
+typedef unsigned short __kernel_gid_t;
+typedef unsigned int __kernel_size_t;
+typedef int __kernel_ssize_t;
+typedef int __kernel_ptrdiff_t;
+typedef long __kernel_time_t;
+typedef long __kernel_suseconds_t;
+typedef long __kernel_clock_t;
+typedef int __kernel_timer_t;
+typedef int __kernel_clockid_t;
+typedef int __kernel_daddr_t;
+typedef char * __kernel_caddr_t;
+typedef unsigned short __kernel_uid16_t;
+typedef unsigned short __kernel_gid16_t;
+typedef unsigned int __kernel_uid32_t;
+typedef unsigned int __kernel_gid32_t;
+
+typedef unsigned short __kernel_old_uid_t;
+typedef unsigned short __kernel_old_gid_t;
+typedef unsigned short __kernel_old_dev_t;
+
+#ifdef __GNUC__
+typedef long long __kernel_loff_t;
+#endif
+
+typedef struct {
+#ifdef __USE_ALL
+ int val[2];
+#else
+ int __val[2];
+#endif
+} __kernel_fsid_t;
+
+#if !defined(__GLIBC__) || __GLIBC__ < 2
+
+#undef __FD_SET
+#define __FD_SET(fd, fdsetp) (((fd_set *)(fdsetp))->fds_bits[(fd) >> 5] |= (1<<((fd) & 31)))
+
+#undef __FD_CLR
+#define __FD_CLR(fd, fdsetp) (((fd_set *)(fdsetp))->fds_bits[(fd) >> 5] &= ~(1<<((fd) & 31)))
+
+#undef __FD_ISSET
+#define __FD_ISSET(fd, fdsetp) ((((fd_set *)(fdsetp))->fds_bits[(fd) >> 5] & (1<<((fd) & 31))) != 0)
+
+#undef __FD_ZERO
+#define __FD_ZERO(fdsetp) (memset (fdsetp, 0, sizeof (*(fd_set *)(fdsetp))))
+
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/proc-fns.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/proc-fns.h
new file mode 100644
index 0000000..4a560d0
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/proc-fns.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_PROCFNS_H
+#define __ASM_PROCFNS_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/processor.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/processor.h
new file mode 100644
index 0000000..f93cbc1
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/processor.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_PROCESSOR_H
+#define __ASM_ARM_PROCESSOR_H
+
+#define current_text_addr() ({ __label__ _l; _l: &&_l;})
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/procinfo.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/procinfo.h
new file mode 100644
index 0000000..d774e0b
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/procinfo.h
@@ -0,0 +1,51 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_PROCINFO_H
+#define __ASM_PROCINFO_H
+
+#ifndef __ASSEMBLY__
+
+struct cpu_tlb_fns;
+struct cpu_user_fns;
+struct cpu_cache_fns;
+struct processor;
+
+struct proc_info_list {
+ unsigned int cpu_val;
+ unsigned int cpu_mask;
+ unsigned long __cpu_mm_mmu_flags;
+ unsigned long __cpu_io_mmu_flags;
+ unsigned long __cpu_flush;
+ const char *arch_name;
+ const char *elf_name;
+ unsigned int elf_hwcap;
+ const char *cpu_name;
+ struct processor *proc;
+ struct cpu_tlb_fns *tlb;
+ struct cpu_user_fns *user;
+ struct cpu_cache_fns *cache;
+};
+
+#endif
+
+#define HWCAP_SWP 1
+#define HWCAP_HALF 2
+#define HWCAP_THUMB 4
+#define HWCAP_26BIT 8
+#define HWCAP_FAST_MULT 16
+#define HWCAP_FPA 32
+#define HWCAP_VFP 64
+#define HWCAP_EDSP 128
+#define HWCAP_JAVA 256
+#define HWCAP_IWMMXT 512
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ptrace.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ptrace.h
new file mode 100644
index 0000000..c6dfea1
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ptrace.h
@@ -0,0 +1,95 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_PTRACE_H
+#define __ASM_ARM_PTRACE_H
+
+#define PTRACE_GETREGS 12
+#define PTRACE_SETREGS 13
+#define PTRACE_GETFPREGS 14
+#define PTRACE_SETFPREGS 15
+
+#define PTRACE_GETWMMXREGS 18
+#define PTRACE_SETWMMXREGS 19
+
+#define PTRACE_OLDSETOPTIONS 21
+
+#define PTRACE_GET_THREAD_AREA 22
+
+#define PTRACE_SET_SYSCALL 23
+
+#define PTRACE_GETCRUNCHREGS 25
+#define PTRACE_SETCRUNCHREGS 26
+
+#define USR26_MODE 0x00000000
+#define FIQ26_MODE 0x00000001
+#define IRQ26_MODE 0x00000002
+#define SVC26_MODE 0x00000003
+#define USR_MODE 0x00000010
+#define FIQ_MODE 0x00000011
+#define IRQ_MODE 0x00000012
+#define SVC_MODE 0x00000013
+#define ABT_MODE 0x00000017
+#define UND_MODE 0x0000001b
+#define SYSTEM_MODE 0x0000001f
+#define MODE32_BIT 0x00000010
+#define MODE_MASK 0x0000001f
+#define PSR_T_BIT 0x00000020
+#define PSR_F_BIT 0x00000040
+#define PSR_I_BIT 0x00000080
+#define PSR_J_BIT 0x01000000
+#define PSR_Q_BIT 0x08000000
+#define PSR_V_BIT 0x10000000
+#define PSR_C_BIT 0x20000000
+#define PSR_Z_BIT 0x40000000
+#define PSR_N_BIT 0x80000000
+#define PCMASK 0
+
+#define PSR_f 0xff000000
+#define PSR_s 0x00ff0000
+#define PSR_x 0x0000ff00
+#define PSR_c 0x000000ff
+
+#ifndef __ASSEMBLY__
+
+struct pt_regs {
+ long uregs[18];
+};
+
+#define ARM_cpsr uregs[16]
+#define ARM_pc uregs[15]
+#define ARM_lr uregs[14]
+#define ARM_sp uregs[13]
+#define ARM_ip uregs[12]
+#define ARM_fp uregs[11]
+#define ARM_r10 uregs[10]
+#define ARM_r9 uregs[9]
+#define ARM_r8 uregs[8]
+#define ARM_r7 uregs[7]
+#define ARM_r6 uregs[6]
+#define ARM_r5 uregs[5]
+#define ARM_r4 uregs[4]
+#define ARM_r3 uregs[3]
+#define ARM_r2 uregs[2]
+#define ARM_r1 uregs[1]
+#define ARM_r0 uregs[0]
+#define ARM_ORIG_r0 uregs[17]
+
+#define pc_pointer(v) ((v) & ~PCMASK)
+
+#define instruction_pointer(regs) (pc_pointer((regs)->ARM_pc))
+
+#define profile_pc(regs) instruction_pointer(regs)
+
+#endif
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/resource.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/resource.h
new file mode 100644
index 0000000..7546dd4
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/resource.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ARM_RESOURCE_H
+#define _ARM_RESOURCE_H
+
+#include <asm-generic/resource.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/scatterlist.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/scatterlist.h
new file mode 100644
index 0000000..a2c06ca
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/scatterlist.h
@@ -0,0 +1,28 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SCATTERLIST_H
+#define _ASMARM_SCATTERLIST_H
+
+#include <asm/memory.h>
+#include <asm/types.h>
+
+struct scatterlist {
+ struct page *page;
+ unsigned int offset;
+ dma_addr_t dma_address;
+ unsigned int length;
+};
+
+#define sg_dma_address(sg) ((sg)->dma_address)
+#define sg_dma_len(sg) ((sg)->length)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/semaphore.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/semaphore.h
new file mode 100644
index 0000000..7c5618a
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/semaphore.h
@@ -0,0 +1,36 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_SEMAPHORE_H
+#define __ASM_ARM_SEMAPHORE_H
+
+#include <linux/linkage.h>
+#include <linux/spinlock.h>
+#include <linux/wait.h>
+#include <linux/rwsem.h>
+
+#include <asm/atomic.h>
+#include <asm/locks.h>
+
+struct semaphore {
+ atomic_t count;
+ int sleepers;
+ wait_queue_head_t wait;
+};
+
+#define __SEMAPHORE_INIT(name, cnt) { .count = ATOMIC_INIT(cnt), .wait = __WAIT_QUEUE_HEAD_INITIALIZER((name).wait), }
+
+#define __DECLARE_SEMAPHORE_GENERIC(name,count) struct semaphore name = __SEMAPHORE_INIT(name,count)
+
+#define DECLARE_MUTEX(name) __DECLARE_SEMAPHORE_GENERIC(name,1)
+#define DECLARE_MUTEX_LOCKED(name) __DECLARE_SEMAPHORE_GENERIC(name,0)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sembuf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sembuf.h
new file mode 100644
index 0000000..a2f5dd0
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sembuf.h
@@ -0,0 +1,26 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SEMBUF_H
+#define _ASMARM_SEMBUF_H
+
+struct semid64_ds {
+ struct ipc64_perm sem_perm;
+ __kernel_time_t sem_otime;
+ unsigned long __unused1;
+ __kernel_time_t sem_ctime;
+ unsigned long __unused2;
+ unsigned long sem_nsems;
+ unsigned long __unused3;
+ unsigned long __unused4;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/shmbuf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/shmbuf.h
new file mode 100644
index 0000000..1d4d78c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/shmbuf.h
@@ -0,0 +1,43 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SHMBUF_H
+#define _ASMARM_SHMBUF_H
+
+struct shmid64_ds {
+ struct ipc64_perm shm_perm;
+ size_t shm_segsz;
+ __kernel_time_t shm_atime;
+ unsigned long __unused1;
+ __kernel_time_t shm_dtime;
+ unsigned long __unused2;
+ __kernel_time_t shm_ctime;
+ unsigned long __unused3;
+ __kernel_pid_t shm_cpid;
+ __kernel_pid_t shm_lpid;
+ unsigned long shm_nattch;
+ unsigned long __unused4;
+ unsigned long __unused5;
+};
+
+struct shminfo64 {
+ unsigned long shmmax;
+ unsigned long shmmin;
+ unsigned long shmmni;
+ unsigned long shmseg;
+ unsigned long shmall;
+ unsigned long __unused1;
+ unsigned long __unused2;
+ unsigned long __unused3;
+ unsigned long __unused4;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/shmparam.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/shmparam.h
new file mode 100644
index 0000000..ea53a8d
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/shmparam.h
@@ -0,0 +1,19 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SHMPARAM_H
+#define _ASMARM_SHMPARAM_H
+
+#define SHMLBA (4 * PAGE_SIZE)
+
+#define __ARCH_FORCE_SHMLBA
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sigcontext.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sigcontext.h
new file mode 100644
index 0000000..3c4fcf3
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sigcontext.h
@@ -0,0 +1,39 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SIGCONTEXT_H
+#define _ASMARM_SIGCONTEXT_H
+
+struct sigcontext {
+ unsigned long trap_no;
+ unsigned long error_code;
+ unsigned long oldmask;
+ unsigned long arm_r0;
+ unsigned long arm_r1;
+ unsigned long arm_r2;
+ unsigned long arm_r3;
+ unsigned long arm_r4;
+ unsigned long arm_r5;
+ unsigned long arm_r6;
+ unsigned long arm_r7;
+ unsigned long arm_r8;
+ unsigned long arm_r9;
+ unsigned long arm_r10;
+ unsigned long arm_fp;
+ unsigned long arm_ip;
+ unsigned long arm_sp;
+ unsigned long arm_lr;
+ unsigned long arm_pc;
+ unsigned long arm_cpsr;
+ unsigned long fault_address;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/siginfo.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/siginfo.h
new file mode 100644
index 0000000..225685e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/siginfo.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SIGINFO_H
+#define _ASMARM_SIGINFO_H
+
+#include <asm-generic/siginfo.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/signal.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/signal.h
new file mode 100644
index 0000000..212d9f1
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/signal.h
@@ -0,0 +1,103 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SIGNAL_H
+#define _ASMARM_SIGNAL_H
+
+#include <linux/types.h>
+
+struct siginfo;
+
+#define NSIG 32
+typedef unsigned long sigset_t;
+
+#define SIGHUP 1
+#define SIGINT 2
+#define SIGQUIT 3
+#define SIGILL 4
+#define SIGTRAP 5
+#define SIGABRT 6
+#define SIGIOT 6
+#define SIGBUS 7
+#define SIGFPE 8
+#define SIGKILL 9
+#define SIGUSR1 10
+#define SIGSEGV 11
+#define SIGUSR2 12
+#define SIGPIPE 13
+#define SIGALRM 14
+#define SIGTERM 15
+#define SIGSTKFLT 16
+#define SIGCHLD 17
+#define SIGCONT 18
+#define SIGSTOP 19
+#define SIGTSTP 20
+#define SIGTTIN 21
+#define SIGTTOU 22
+#define SIGURG 23
+#define SIGXCPU 24
+#define SIGXFSZ 25
+#define SIGVTALRM 26
+#define SIGPROF 27
+#define SIGWINCH 28
+#define SIGIO 29
+#define SIGPOLL SIGIO
+
+#define SIGPWR 30
+#define SIGSYS 31
+#define SIGUNUSED 31
+
+#define SIGRTMIN 32
+#define SIGRTMAX _NSIG
+
+#define SIGSWI 32
+
+#define SA_NOCLDSTOP 0x00000001
+#define SA_NOCLDWAIT 0x00000002
+#define SA_SIGINFO 0x00000004
+#define SA_THIRTYTWO 0x02000000
+#define SA_RESTORER 0x04000000
+#define SA_ONSTACK 0x08000000
+#define SA_RESTART 0x10000000
+#define SA_NODEFER 0x40000000
+#define SA_RESETHAND 0x80000000
+
+#define SA_NOMASK SA_NODEFER
+#define SA_ONESHOT SA_RESETHAND
+
+#define SS_ONSTACK 1
+#define SS_DISABLE 2
+
+#define MINSIGSTKSZ 2048
+#define SIGSTKSZ 8192
+
+#include <asm-generic/signal.h>
+
+struct sigaction {
+ union {
+ __sighandler_t _sa_handler;
+ void (*_sa_sigaction)(int, struct siginfo *, void *);
+ } _u;
+ sigset_t sa_mask;
+ unsigned long sa_flags;
+ void (*sa_restorer)(void);
+};
+
+#define sa_handler _u._sa_handler
+#define sa_sigaction _u._sa_sigaction
+
+typedef struct sigaltstack {
+ void __user *ss_sp;
+ int ss_flags;
+ size_t ss_size;
+} stack_t;
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sizes.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sizes.h
new file mode 100644
index 0000000..90c1c71
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sizes.h
@@ -0,0 +1,39 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __sizes_h
+#define __sizes_h 1
+
+#define SZ_1K 0x00000400
+#define SZ_4K 0x00001000
+#define SZ_8K 0x00002000
+#define SZ_16K 0x00004000
+#define SZ_64K 0x00010000
+#define SZ_128K 0x00020000
+#define SZ_256K 0x00040000
+#define SZ_512K 0x00080000
+
+#define SZ_1M 0x00100000
+#define SZ_2M 0x00200000
+#define SZ_4M 0x00400000
+#define SZ_8M 0x00800000
+#define SZ_16M 0x01000000
+#define SZ_32M 0x02000000
+#define SZ_64M 0x04000000
+#define SZ_128M 0x08000000
+#define SZ_256M 0x10000000
+#define SZ_512M 0x20000000
+
+#define SZ_1G 0x40000000
+#define SZ_2G 0x80000000
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/smp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/smp.h
new file mode 100644
index 0000000..e6c1e41
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/smp.h
@@ -0,0 +1,34 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_SMP_H
+#define __ASM_ARM_SMP_H
+
+#include <linux/threads.h>
+#include <linux/cpumask.h>
+#include <linux/thread_info.h>
+
+#include <asm/arch/smp.h>
+
+#error "<asm-arm/smp.h> included in non-SMP build"
+
+#define raw_smp_processor_id() (current_thread_info()->cpu)
+
+#define PROC_CHANGE_PENALTY 15
+
+struct seq_file;
+
+struct secondary_data {
+ unsigned long pgdir;
+ void *stack;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/socket.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/socket.h
new file mode 100644
index 0000000..1f0050a
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/socket.h
@@ -0,0 +1,61 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SOCKET_H
+#define _ASMARM_SOCKET_H
+
+#include <asm/sockios.h>
+
+#define SOL_SOCKET 1
+
+#define SO_DEBUG 1
+#define SO_REUSEADDR 2
+#define SO_TYPE 3
+#define SO_ERROR 4
+#define SO_DONTROUTE 5
+#define SO_BROADCAST 6
+#define SO_SNDBUF 7
+#define SO_RCVBUF 8
+#define SO_SNDBUFFORCE 32
+#define SO_RCVBUFFORCE 33
+#define SO_KEEPALIVE 9
+#define SO_OOBINLINE 10
+#define SO_NO_CHECK 11
+#define SO_PRIORITY 12
+#define SO_LINGER 13
+#define SO_BSDCOMPAT 14
+
+#define SO_PASSCRED 16
+#define SO_PEERCRED 17
+#define SO_RCVLOWAT 18
+#define SO_SNDLOWAT 19
+#define SO_RCVTIMEO 20
+#define SO_SNDTIMEO 21
+
+#define SO_SECURITY_AUTHENTICATION 22
+#define SO_SECURITY_ENCRYPTION_TRANSPORT 23
+#define SO_SECURITY_ENCRYPTION_NETWORK 24
+
+#define SO_BINDTODEVICE 25
+
+#define SO_ATTACH_FILTER 26
+#define SO_DETACH_FILTER 27
+
+#define SO_PEERNAME 28
+#define SO_TIMESTAMP 29
+#define SCM_TIMESTAMP SO_TIMESTAMP
+
+#define SO_ACCEPTCONN 30
+
+#define SO_PEERSEC 31
+#define SO_PASSSEC 34
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sockios.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sockios.h
new file mode 100644
index 0000000..cab86b8
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sockios.h
@@ -0,0 +1,22 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARCH_ARM_SOCKIOS_H
+#define __ARCH_ARM_SOCKIOS_H
+
+#define FIOSETOWN 0x8901
+#define SIOCSPGRP 0x8902
+#define FIOGETOWN 0x8903
+#define SIOCGPGRP 0x8904
+#define SIOCATMARK 0x8905
+#define SIOCGSTAMP 0x8906
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/spinlock.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/spinlock.h
new file mode 100644
index 0000000..3ae2173
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/spinlock.h
@@ -0,0 +1,27 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_SPINLOCK_H
+#define __ASM_SPINLOCK_H
+
+#if __LINUX_ARM_ARCH__ < 6
+#error SMP not supported on pre-ARMv6 CPUs
+#endif
+
+#define __raw_spin_is_locked(x) ((x)->lock != 0)
+#define __raw_spin_unlock_wait(lock) do { while (__raw_spin_is_locked(lock)) cpu_relax(); } while (0)
+
+#define __raw_spin_lock_flags(lock, flags) __raw_spin_lock(lock)
+
+#define rwlock_is_locked(x) (*((volatile unsigned int *)(x)) != 0)
+#define __raw_write_can_lock(x) ((x)->lock == 0x80000000)
+#define __raw_read_can_lock(x) ((x)->lock < 0x80000000)
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/spinlock_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/spinlock_types.h
new file mode 100644
index 0000000..ee77f20
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/spinlock_types.h
@@ -0,0 +1,31 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_SPINLOCK_TYPES_H
+#define __ASM_SPINLOCK_TYPES_H
+
+#ifndef __LINUX_SPINLOCK_TYPES_H
+#error "please don't include this file directly"
+#endif
+
+typedef struct {
+ volatile unsigned int lock;
+} raw_spinlock_t;
+
+#define __RAW_SPIN_LOCK_UNLOCKED { 0 }
+
+typedef struct {
+ volatile unsigned int lock;
+} raw_rwlock_t;
+
+#define __RAW_RW_LOCK_UNLOCKED { 0 }
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/stat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/stat.h
new file mode 100644
index 0000000..49b85f9
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/stat.h
@@ -0,0 +1,93 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_STAT_H
+#define _ASMARM_STAT_H
+
+struct __old_kernel_stat {
+ unsigned short st_dev;
+ unsigned short st_ino;
+ unsigned short st_mode;
+ unsigned short st_nlink;
+ unsigned short st_uid;
+ unsigned short st_gid;
+ unsigned short st_rdev;
+ unsigned long st_size;
+ unsigned long st_atime;
+ unsigned long st_mtime;
+ unsigned long st_ctime;
+};
+
+#define STAT_HAVE_NSEC
+
+struct stat {
+#ifdef __ARMEB__
+ unsigned short st_dev;
+ unsigned short __pad1;
+#else
+ unsigned long st_dev;
+#endif
+ unsigned long st_ino;
+ unsigned short st_mode;
+ unsigned short st_nlink;
+ unsigned short st_uid;
+ unsigned short st_gid;
+#ifdef __ARMEB__
+ unsigned short st_rdev;
+ unsigned short __pad2;
+#else
+ unsigned long st_rdev;
+#endif
+ unsigned long st_size;
+ unsigned long st_blksize;
+ unsigned long st_blocks;
+ unsigned long st_atime;
+ unsigned long st_atime_nsec;
+ unsigned long st_mtime;
+ unsigned long st_mtime_nsec;
+ unsigned long st_ctime;
+ unsigned long st_ctime_nsec;
+ unsigned long __unused4;
+ unsigned long __unused5;
+};
+
+struct stat64 {
+ unsigned long long st_dev;
+ unsigned char __pad0[4];
+
+#define STAT64_HAS_BROKEN_ST_INO 1
+ unsigned long __st_ino;
+ unsigned int st_mode;
+ unsigned int st_nlink;
+
+ unsigned long st_uid;
+ unsigned long st_gid;
+
+ unsigned long long st_rdev;
+ unsigned char __pad3[4];
+
+ long long st_size;
+ unsigned long st_blksize;
+ unsigned long long st_blocks;
+
+ unsigned long st_atime;
+ unsigned long st_atime_nsec;
+
+ unsigned long st_mtime;
+ unsigned long st_mtime_nsec;
+
+ unsigned long st_ctime;
+ unsigned long st_ctime_nsec;
+
+ unsigned long long st_ino;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/statfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/statfs.h
new file mode 100644
index 0000000..7963eab
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/statfs.h
@@ -0,0 +1,43 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_STATFS_H
+#define _ASMARM_STATFS_H
+
+struct statfs {
+ __u32 f_type;
+ __u32 f_bsize;
+ __u32 f_blocks;
+ __u32 f_bfree;
+ __u32 f_bavail;
+ __u32 f_files;
+ __u32 f_ffree;
+ __kernel_fsid_t f_fsid;
+ __u32 f_namelen;
+ __u32 f_frsize;
+ __u32 f_spare[5];
+};
+
+struct statfs64 {
+ __u32 f_type;
+ __u32 f_bsize;
+ __u64 f_blocks;
+ __u64 f_bfree;
+ __u64 f_bavail;
+ __u64 f_files;
+ __u64 f_ffree;
+ __kernel_fsid_t f_fsid;
+ __u32 f_namelen;
+ __u32 f_frsize;
+ __u32 f_spare[5];
+} __attribute__ ((packed,aligned(4)));
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/suspend.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/suspend.h
new file mode 100644
index 0000000..156c171
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/suspend.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SUSPEND_H
+#define _ASMARM_SUSPEND_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/system.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/system.h
new file mode 100644
index 0000000..8e85039
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/system.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_SYSTEM_H
+#define __ASM_ARM_SYSTEM_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/termbits.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/termbits.h
new file mode 100644
index 0000000..640bd27
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/termbits.h
@@ -0,0 +1,174 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_TERMBITS_H
+#define __ASM_ARM_TERMBITS_H
+
+typedef unsigned char cc_t;
+typedef unsigned int speed_t;
+typedef unsigned int tcflag_t;
+
+#define NCCS 19
+struct termios {
+ tcflag_t c_iflag;
+ tcflag_t c_oflag;
+ tcflag_t c_cflag;
+ tcflag_t c_lflag;
+ cc_t c_line;
+ cc_t c_cc[NCCS];
+};
+
+#define VINTR 0
+#define VQUIT 1
+#define VERASE 2
+#define VKILL 3
+#define VEOF 4
+#define VTIME 5
+#define VMIN 6
+#define VSWTC 7
+#define VSTART 8
+#define VSTOP 9
+#define VSUSP 10
+#define VEOL 11
+#define VREPRINT 12
+#define VDISCARD 13
+#define VWERASE 14
+#define VLNEXT 15
+#define VEOL2 16
+
+#define IGNBRK 0000001
+#define BRKINT 0000002
+#define IGNPAR 0000004
+#define PARMRK 0000010
+#define INPCK 0000020
+#define ISTRIP 0000040
+#define INLCR 0000100
+#define IGNCR 0000200
+#define ICRNL 0000400
+#define IUCLC 0001000
+#define IXON 0002000
+#define IXANY 0004000
+#define IXOFF 0010000
+#define IMAXBEL 0020000
+#define IUTF8 0040000
+
+#define OPOST 0000001
+#define OLCUC 0000002
+#define ONLCR 0000004
+#define OCRNL 0000010
+#define ONOCR 0000020
+#define ONLRET 0000040
+#define OFILL 0000100
+#define OFDEL 0000200
+#define NLDLY 0000400
+#define NL0 0000000
+#define NL1 0000400
+#define CRDLY 0003000
+#define CR0 0000000
+#define CR1 0001000
+#define CR2 0002000
+#define CR3 0003000
+#define TABDLY 0014000
+#define TAB0 0000000
+#define TAB1 0004000
+#define TAB2 0010000
+#define TAB3 0014000
+#define XTABS 0014000
+#define BSDLY 0020000
+#define BS0 0000000
+#define BS1 0020000
+#define VTDLY 0040000
+#define VT0 0000000
+#define VT1 0040000
+#define FFDLY 0100000
+#define FF0 0000000
+#define FF1 0100000
+
+#define CBAUD 0010017
+#define B0 0000000
+#define B50 0000001
+#define B75 0000002
+#define B110 0000003
+#define B134 0000004
+#define B150 0000005
+#define B200 0000006
+#define B300 0000007
+#define B600 0000010
+#define B1200 0000011
+#define B1800 0000012
+#define B2400 0000013
+#define B4800 0000014
+#define B9600 0000015
+#define B19200 0000016
+#define B38400 0000017
+#define EXTA B19200
+#define EXTB B38400
+#define CSIZE 0000060
+#define CS5 0000000
+#define CS6 0000020
+#define CS7 0000040
+#define CS8 0000060
+#define CSTOPB 0000100
+#define CREAD 0000200
+#define PARENB 0000400
+#define PARODD 0001000
+#define HUPCL 0002000
+#define CLOCAL 0004000
+#define CBAUDEX 0010000
+#define B57600 0010001
+#define B115200 0010002
+#define B230400 0010003
+#define B460800 0010004
+#define B500000 0010005
+#define B576000 0010006
+#define B921600 0010007
+#define B1000000 0010010
+#define B1152000 0010011
+#define B1500000 0010012
+#define B2000000 0010013
+#define B2500000 0010014
+#define B3000000 0010015
+#define B3500000 0010016
+#define B4000000 0010017
+#define CIBAUD 002003600000
+#define CMSPAR 010000000000
+#define CRTSCTS 020000000000
+
+#define ISIG 0000001
+#define ICANON 0000002
+#define XCASE 0000004
+#define ECHO 0000010
+#define ECHOE 0000020
+#define ECHOK 0000040
+#define ECHONL 0000100
+#define NOFLSH 0000200
+#define TOSTOP 0000400
+#define ECHOCTL 0001000
+#define ECHOPRT 0002000
+#define ECHOKE 0004000
+#define FLUSHO 0010000
+#define PENDIN 0040000
+#define IEXTEN 0100000
+
+#define TCOOFF 0
+#define TCOON 1
+#define TCIOFF 2
+#define TCION 3
+
+#define TCIFLUSH 0
+#define TCOFLUSH 1
+#define TCIOFLUSH 2
+
+#define TCSANOW 0
+#define TCSADRAIN 1
+#define TCSAFLUSH 2
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/termios.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/termios.h
new file mode 100644
index 0000000..ba43ac2
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/termios.h
@@ -0,0 +1,67 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_TERMIOS_H
+#define __ASM_ARM_TERMIOS_H
+
+#include <asm/termbits.h>
+#include <asm/ioctls.h>
+
+struct winsize {
+ unsigned short ws_row;
+ unsigned short ws_col;
+ unsigned short ws_xpixel;
+ unsigned short ws_ypixel;
+};
+
+#define NCC 8
+struct termio {
+ unsigned short c_iflag;
+ unsigned short c_oflag;
+ unsigned short c_cflag;
+ unsigned short c_lflag;
+ unsigned char c_line;
+ unsigned char c_cc[NCC];
+};
+
+#define TIOCM_LE 0x001
+#define TIOCM_DTR 0x002
+#define TIOCM_RTS 0x004
+#define TIOCM_ST 0x008
+#define TIOCM_SR 0x010
+#define TIOCM_CTS 0x020
+#define TIOCM_CAR 0x040
+#define TIOCM_RNG 0x080
+#define TIOCM_DSR 0x100
+#define TIOCM_CD TIOCM_CAR
+#define TIOCM_RI TIOCM_RNG
+#define TIOCM_OUT1 0x2000
+#define TIOCM_OUT2 0x4000
+#define TIOCM_LOOP 0x8000
+
+#define N_TTY 0
+#define N_SLIP 1
+#define N_MOUSE 2
+#define N_PPP 3
+#define N_STRIP 4
+#define N_AX25 5
+#define N_X25 6
+#define N_6PACK 7
+#define N_MASC 8
+#define N_R3964 9
+#define N_PROFIBUS_FDL 10
+#define N_IRDA 11
+#define N_SMSBLOCK 12
+#define N_HDLC 13
+#define N_SYNC_PPP 14
+#define N_HCI 15
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/thread_info.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/thread_info.h
new file mode 100644
index 0000000..a30d2dc
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/thread_info.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_THREAD_INFO_H
+#define __ASM_ARM_THREAD_INFO_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/timex.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/timex.h
new file mode 100644
index 0000000..110c471
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/timex.h
@@ -0,0 +1,19 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_TIMEX_H
+#define _ASMARM_TIMEX_H
+
+#include <asm/arch/timex.h>
+
+typedef unsigned long cycles_t;
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/tlbflush.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/tlbflush.h
new file mode 100644
index 0000000..70a23dc
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/tlbflush.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_TLBFLUSH_H
+#define _ASMARM_TLBFLUSH_H
+
+#define tlb_flush(tlb) ((void) tlb)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/topology.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/topology.h
new file mode 100644
index 0000000..9eccfd4
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/topology.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASM_ARM_TOPOLOGY_H
+#define _ASM_ARM_TOPOLOGY_H
+
+#include <asm-generic/topology.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/types.h
new file mode 100644
index 0000000..ec60f10
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/types.h
@@ -0,0 +1,36 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_TYPES_H
+#define __ASM_ARM_TYPES_H
+
+#ifndef __ASSEMBLY__
+
+typedef unsigned short umode_t;
+
+typedef __signed__ char __s8;
+typedef unsigned char __u8;
+
+typedef __signed__ short __s16;
+typedef unsigned short __u16;
+
+typedef __signed__ int __s32;
+typedef unsigned int __u32;
+
+#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
+typedef __signed__ long long __s64;
+typedef unsigned long long __u64;
+#endif
+
+#endif
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/uaccess.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/uaccess.h
new file mode 100644
index 0000000..21fc3f2
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/uaccess.h
@@ -0,0 +1,77 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_UACCESS_H
+#define _ASMARM_UACCESS_H
+
+#include <linux/sched.h>
+#include <asm/errno.h>
+#include <asm/memory.h>
+#include <asm/domain.h>
+#include <asm/system.h>
+
+#define VERIFY_READ 0
+#define VERIFY_WRITE 1
+
+struct exception_table_entry
+{
+ unsigned long insn, fixup;
+};
+
+#define KERNEL_DS 0x00000000
+#define get_ds() (KERNEL_DS)
+
+#define USER_DS KERNEL_DS
+
+#define segment_eq(a,b) (1)
+#define __addr_ok(addr) (1)
+#define __range_ok(addr,size) (0)
+#define get_fs() (KERNEL_DS)
+
+#define get_user(x,p) __get_user(x,p)
+#define put_user(x,p) __put_user(x,p)
+#define access_ok(type,addr,size) (__range_ok(addr,size) == 0)
+#define __get_user(x,ptr) ({ long __gu_err = 0; __get_user_err((x),(ptr),__gu_err); __gu_err; })
+#define __get_user_error(x,ptr,err) ({ __get_user_err((x),(ptr),err); (void) 0; })
+#define __get_user_err(x,ptr,err) do { unsigned long __gu_addr = (unsigned long)(ptr); unsigned long __gu_val; __chk_user_ptr(ptr); switch (sizeof(*(ptr))) { case 1: __get_user_asm_byte(__gu_val,__gu_addr,err); break; case 2: __get_user_asm_half(__gu_val,__gu_addr,err); break; case 4: __get_user_asm_word(__gu_val,__gu_addr,err); break; default: (__gu_val) = __get_user_bad(); } (x) = (__typeof__(*(ptr)))__gu_val; } while (0)
+#define __get_user_asm_byte(x,addr,err) __asm__ __volatile__( "1: ldrbt %1,[%2],#0\n" "2:\n" " .section .fixup,\"ax\"\n" " .align 2\n" "3: mov %0, %3\n" " mov %1, #0\n" " b 2b\n" " .previous\n" " .section __ex_table,\"a\"\n" " .align 3\n" " .long 1b, 3b\n" " .previous" : "+r" (err), "=&r" (x) : "r" (addr), "i" (-EFAULT) : "cc")
+#ifndef __ARMEB__
+#define __get_user_asm_half(x,__gu_addr,err) ({ unsigned long __b1, __b2; __get_user_asm_byte(__b1, __gu_addr, err); __get_user_asm_byte(__b2, __gu_addr + 1, err); (x) = __b1 | (__b2 << 8); })
+#else
+#define __get_user_asm_half(x,__gu_addr,err) ({ unsigned long __b1, __b2; __get_user_asm_byte(__b1, __gu_addr, err); __get_user_asm_byte(__b2, __gu_addr + 1, err); (x) = (__b1 << 8) | __b2; })
+#endif
+#define __get_user_asm_word(x,addr,err) __asm__ __volatile__( "1: ldrt %1,[%2],#0\n" "2:\n" " .section .fixup,\"ax\"\n" " .align 2\n" "3: mov %0, %3\n" " mov %1, #0\n" " b 2b\n" " .previous\n" " .section __ex_table,\"a\"\n" " .align 3\n" " .long 1b, 3b\n" " .previous" : "+r" (err), "=&r" (x) : "r" (addr), "i" (-EFAULT) : "cc")
+#define __put_user(x,ptr) ({ long __pu_err = 0; __put_user_err((x),(ptr),__pu_err); __pu_err; })
+#define __put_user_error(x,ptr,err) ({ __put_user_err((x),(ptr),err); (void) 0; })
+#define __put_user_err(x,ptr,err) do { unsigned long __pu_addr = (unsigned long)(ptr); __typeof__(*(ptr)) __pu_val = (x); __chk_user_ptr(ptr); switch (sizeof(*(ptr))) { case 1: __put_user_asm_byte(__pu_val,__pu_addr,err); break; case 2: __put_user_asm_half(__pu_val,__pu_addr,err); break; case 4: __put_user_asm_word(__pu_val,__pu_addr,err); break; case 8: __put_user_asm_dword(__pu_val,__pu_addr,err); break; default: __put_user_bad(); } } while (0)
+#define __put_user_asm_byte(x,__pu_addr,err) __asm__ __volatile__( "1: strbt %1,[%2],#0\n" "2:\n" " .section .fixup,\"ax\"\n" " .align 2\n" "3: mov %0, %3\n" " b 2b\n" " .previous\n" " .section __ex_table,\"a\"\n" " .align 3\n" " .long 1b, 3b\n" " .previous" : "+r" (err) : "r" (x), "r" (__pu_addr), "i" (-EFAULT) : "cc")
+#ifndef __ARMEB__
+#define __put_user_asm_half(x,__pu_addr,err) ({ unsigned long __temp = (unsigned long)(x); __put_user_asm_byte(__temp, __pu_addr, err); __put_user_asm_byte(__temp >> 8, __pu_addr + 1, err); })
+#else
+#define __put_user_asm_half(x,__pu_addr,err) ({ unsigned long __temp = (unsigned long)(x); __put_user_asm_byte(__temp >> 8, __pu_addr, err); __put_user_asm_byte(__temp, __pu_addr + 1, err); })
+#endif
+#define __put_user_asm_word(x,__pu_addr,err) __asm__ __volatile__( "1: strt %1,[%2],#0\n" "2:\n" " .section .fixup,\"ax\"\n" " .align 2\n" "3: mov %0, %3\n" " b 2b\n" " .previous\n" " .section __ex_table,\"a\"\n" " .align 3\n" " .long 1b, 3b\n" " .previous" : "+r" (err) : "r" (x), "r" (__pu_addr), "i" (-EFAULT) : "cc")
+#ifndef __ARMEB__
+#define __reg_oper0 "%R2"
+#define __reg_oper1 "%Q2"
+#else
+#define __reg_oper0 "%Q2"
+#define __reg_oper1 "%R2"
+#endif
+#define __put_user_asm_dword(x,__pu_addr,err) __asm__ __volatile__( "1: strt " __reg_oper1 ", [%1], #4\n" "2: strt " __reg_oper0 ", [%1], #0\n" "3:\n" " .section .fixup,\"ax\"\n" " .align 2\n" "4: mov %0, %3\n" " b 3b\n" " .previous\n" " .section __ex_table,\"a\"\n" " .align 3\n" " .long 1b, 4b\n" " .long 2b, 4b\n" " .previous" : "+r" (err), "+r" (__pu_addr) : "r" (x), "i" (-EFAULT) : "cc")
+#define __copy_from_user(to,from,n) (memcpy(to, (void __force *)from, n), 0)
+#define __copy_to_user(to,from,n) (memcpy((void __force *)to, from, n), 0)
+#define __clear_user(addr,n) (memset((void __force *)addr, 0, n), 0)
+
+#define __copy_to_user_inatomic __copy_to_user
+#define __copy_from_user_inatomic __copy_from_user
+#define strlen_user(s) strnlen_user(s, ~0UL >> 1)
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/unaligned.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/unaligned.h
new file mode 100644
index 0000000..8b9b096
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/unaligned.h
@@ -0,0 +1,38 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_UNALIGNED_H
+#define __ASM_ARM_UNALIGNED_H
+
+#include <asm/types.h>
+
+#define __get_unaligned_2_le(__p) (__p[0] | __p[1] << 8)
+
+#define __get_unaligned_2_be(__p) (__p[0] << 8 | __p[1])
+
+#define __get_unaligned_4_le(__p) (__p[0] | __p[1] << 8 | __p[2] << 16 | __p[3] << 24)
+
+#define __get_unaligned_4_be(__p) (__p[0] << 24 | __p[1] << 16 | __p[2] << 8 | __p[3])
+
+#define __get_unaligned_le(ptr) ({ __typeof__(*(ptr)) __v; __u8 *__p = (__u8 *)(ptr); switch (sizeof(*(ptr))) { case 1: __v = *(ptr); break; case 2: __v = __get_unaligned_2_le(__p); break; case 4: __v = __get_unaligned_4_le(__p); break; case 8: { unsigned int __v1, __v2; __v2 = __get_unaligned_4_le((__p+4)); __v1 = __get_unaligned_4_le(__p); __v = ((unsigned long long)__v2 << 32 | __v1); } break; default: __v = __bug_unaligned_x(__p); break; } __v; })
+
+#define __get_unaligned_be(ptr) ({ __typeof__(*(ptr)) __v; __u8 *__p = (__u8 *)(ptr); switch (sizeof(*(ptr))) { case 1: __v = *(ptr); break; case 2: __v = __get_unaligned_2_be(__p); break; case 4: __v = __get_unaligned_4_be(__p); break; case 8: { unsigned int __v1, __v2; __v2 = __get_unaligned_4_be(__p); __v1 = __get_unaligned_4_be((__p+4)); __v = ((unsigned long long)__v2 << 32 | __v1); } break; default: __v = __bug_unaligned_x(__p); break; } __v; })
+
+#define __put_unaligned_le(val,ptr) ({ switch (sizeof(*(ptr))) { case 1: *(ptr) = (val); break; case 2: __put_unaligned_2_le((val),(__u8 *)(ptr)); break; case 4: __put_unaligned_4_le((val),(__u8 *)(ptr)); break; case 8: __put_unaligned_8_le((val),(__u8 *)(ptr)); break; default: __bug_unaligned_x(ptr); break; } (void) 0; })
+#define __put_unaligned_be(val,ptr) ({ switch (sizeof(*(ptr))) { case 1: *(ptr) = (val); break; case 2: __put_unaligned_2_be((val),(__u8 *)(ptr)); break; case 4: __put_unaligned_4_be((val),(__u8 *)(ptr)); break; case 8: __put_unaligned_8_be((val),(__u8 *)(ptr)); break; default: __bug_unaligned_x(ptr); break; } (void) 0; })
+#ifndef __ARMEB__
+#define get_unaligned __get_unaligned_le
+#define put_unaligned __put_unaligned_le
+#else
+#define get_unaligned __get_unaligned_be
+#define put_unaligned __put_unaligned_be
+#endif
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/unistd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/unistd.h
new file mode 100644
index 0000000..9a30ddc
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/unistd.h
@@ -0,0 +1,359 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_UNISTD_H
+#define __ASM_ARM_UNISTD_H
+
+#define __NR_OABI_SYSCALL_BASE 0x900000
+
+#if defined(__thumb__) || defined(__ARM_EABI__)
+#define __NR_SYSCALL_BASE 0
+#else
+#define __NR_SYSCALL_BASE __NR_OABI_SYSCALL_BASE
+#endif
+
+#define __NR_restart_syscall (__NR_SYSCALL_BASE+ 0)
+#define __NR_exit (__NR_SYSCALL_BASE+ 1)
+#define __NR_fork (__NR_SYSCALL_BASE+ 2)
+#define __NR_read (__NR_SYSCALL_BASE+ 3)
+#define __NR_write (__NR_SYSCALL_BASE+ 4)
+#define __NR_open (__NR_SYSCALL_BASE+ 5)
+#define __NR_close (__NR_SYSCALL_BASE+ 6)
+
+#define __NR_creat (__NR_SYSCALL_BASE+ 8)
+#define __NR_link (__NR_SYSCALL_BASE+ 9)
+#define __NR_unlink (__NR_SYSCALL_BASE+ 10)
+#define __NR_execve (__NR_SYSCALL_BASE+ 11)
+#define __NR_chdir (__NR_SYSCALL_BASE+ 12)
+#define __NR_time (__NR_SYSCALL_BASE+ 13)
+#define __NR_mknod (__NR_SYSCALL_BASE+ 14)
+#define __NR_chmod (__NR_SYSCALL_BASE+ 15)
+#define __NR_lchown (__NR_SYSCALL_BASE+ 16)
+
+#define __NR_lseek (__NR_SYSCALL_BASE+ 19)
+#define __NR_getpid (__NR_SYSCALL_BASE+ 20)
+#define __NR_mount (__NR_SYSCALL_BASE+ 21)
+#define __NR_umount (__NR_SYSCALL_BASE+ 22)
+#define __NR_setuid (__NR_SYSCALL_BASE+ 23)
+#define __NR_getuid (__NR_SYSCALL_BASE+ 24)
+#define __NR_stime (__NR_SYSCALL_BASE+ 25)
+#define __NR_ptrace (__NR_SYSCALL_BASE+ 26)
+#define __NR_alarm (__NR_SYSCALL_BASE+ 27)
+
+#define __NR_pause (__NR_SYSCALL_BASE+ 29)
+#define __NR_utime (__NR_SYSCALL_BASE+ 30)
+
+#define __NR_access (__NR_SYSCALL_BASE+ 33)
+#define __NR_nice (__NR_SYSCALL_BASE+ 34)
+
+#define __NR_sync (__NR_SYSCALL_BASE+ 36)
+#define __NR_kill (__NR_SYSCALL_BASE+ 37)
+#define __NR_rename (__NR_SYSCALL_BASE+ 38)
+#define __NR_mkdir (__NR_SYSCALL_BASE+ 39)
+#define __NR_rmdir (__NR_SYSCALL_BASE+ 40)
+#define __NR_dup (__NR_SYSCALL_BASE+ 41)
+#define __NR_pipe (__NR_SYSCALL_BASE+ 42)
+#define __NR_times (__NR_SYSCALL_BASE+ 43)
+
+#define __NR_brk (__NR_SYSCALL_BASE+ 45)
+#define __NR_setgid (__NR_SYSCALL_BASE+ 46)
+#define __NR_getgid (__NR_SYSCALL_BASE+ 47)
+
+#define __NR_geteuid (__NR_SYSCALL_BASE+ 49)
+#define __NR_getegid (__NR_SYSCALL_BASE+ 50)
+#define __NR_acct (__NR_SYSCALL_BASE+ 51)
+#define __NR_umount2 (__NR_SYSCALL_BASE+ 52)
+
+#define __NR_ioctl (__NR_SYSCALL_BASE+ 54)
+#define __NR_fcntl (__NR_SYSCALL_BASE+ 55)
+
+#define __NR_setpgid (__NR_SYSCALL_BASE+ 57)
+
+#define __NR_umask (__NR_SYSCALL_BASE+ 60)
+#define __NR_chroot (__NR_SYSCALL_BASE+ 61)
+#define __NR_ustat (__NR_SYSCALL_BASE+ 62)
+#define __NR_dup2 (__NR_SYSCALL_BASE+ 63)
+#define __NR_getppid (__NR_SYSCALL_BASE+ 64)
+#define __NR_getpgrp (__NR_SYSCALL_BASE+ 65)
+#define __NR_setsid (__NR_SYSCALL_BASE+ 66)
+#define __NR_sigaction (__NR_SYSCALL_BASE+ 67)
+
+#define __NR_setreuid (__NR_SYSCALL_BASE+ 70)
+#define __NR_setregid (__NR_SYSCALL_BASE+ 71)
+#define __NR_sigsuspend (__NR_SYSCALL_BASE+ 72)
+#define __NR_sigpending (__NR_SYSCALL_BASE+ 73)
+#define __NR_sethostname (__NR_SYSCALL_BASE+ 74)
+#define __NR_setrlimit (__NR_SYSCALL_BASE+ 75)
+#define __NR_getrlimit (__NR_SYSCALL_BASE+ 76)
+#define __NR_getrusage (__NR_SYSCALL_BASE+ 77)
+#define __NR_gettimeofday (__NR_SYSCALL_BASE+ 78)
+#define __NR_settimeofday (__NR_SYSCALL_BASE+ 79)
+#define __NR_getgroups (__NR_SYSCALL_BASE+ 80)
+#define __NR_setgroups (__NR_SYSCALL_BASE+ 81)
+#define __NR_select (__NR_SYSCALL_BASE+ 82)
+#define __NR_symlink (__NR_SYSCALL_BASE+ 83)
+
+#define __NR_readlink (__NR_SYSCALL_BASE+ 85)
+#define __NR_uselib (__NR_SYSCALL_BASE+ 86)
+#define __NR_swapon (__NR_SYSCALL_BASE+ 87)
+#define __NR_reboot (__NR_SYSCALL_BASE+ 88)
+#define __NR_readdir (__NR_SYSCALL_BASE+ 89)
+#define __NR_mmap (__NR_SYSCALL_BASE+ 90)
+#define __NR_munmap (__NR_SYSCALL_BASE+ 91)
+#define __NR_truncate (__NR_SYSCALL_BASE+ 92)
+#define __NR_ftruncate (__NR_SYSCALL_BASE+ 93)
+#define __NR_fchmod (__NR_SYSCALL_BASE+ 94)
+#define __NR_fchown (__NR_SYSCALL_BASE+ 95)
+#define __NR_getpriority (__NR_SYSCALL_BASE+ 96)
+#define __NR_setpriority (__NR_SYSCALL_BASE+ 97)
+
+#define __NR_statfs (__NR_SYSCALL_BASE+ 99)
+#define __NR_fstatfs (__NR_SYSCALL_BASE+100)
+
+#define __NR_socketcall (__NR_SYSCALL_BASE+102)
+#define __NR_syslog (__NR_SYSCALL_BASE+103)
+#define __NR_setitimer (__NR_SYSCALL_BASE+104)
+#define __NR_getitimer (__NR_SYSCALL_BASE+105)
+#define __NR_stat (__NR_SYSCALL_BASE+106)
+#define __NR_lstat (__NR_SYSCALL_BASE+107)
+#define __NR_fstat (__NR_SYSCALL_BASE+108)
+
+#define __NR_vhangup (__NR_SYSCALL_BASE+111)
+
+#define __NR_syscall (__NR_SYSCALL_BASE+113)
+#define __NR_wait4 (__NR_SYSCALL_BASE+114)
+#define __NR_swapoff (__NR_SYSCALL_BASE+115)
+#define __NR_sysinfo (__NR_SYSCALL_BASE+116)
+#define __NR_ipc (__NR_SYSCALL_BASE+117)
+#define __NR_fsync (__NR_SYSCALL_BASE+118)
+#define __NR_sigreturn (__NR_SYSCALL_BASE+119)
+#define __NR_clone (__NR_SYSCALL_BASE+120)
+#define __NR_setdomainname (__NR_SYSCALL_BASE+121)
+#define __NR_uname (__NR_SYSCALL_BASE+122)
+
+#define __NR_adjtimex (__NR_SYSCALL_BASE+124)
+#define __NR_mprotect (__NR_SYSCALL_BASE+125)
+#define __NR_sigprocmask (__NR_SYSCALL_BASE+126)
+
+#define __NR_init_module (__NR_SYSCALL_BASE+128)
+#define __NR_delete_module (__NR_SYSCALL_BASE+129)
+
+#define __NR_quotactl (__NR_SYSCALL_BASE+131)
+#define __NR_getpgid (__NR_SYSCALL_BASE+132)
+#define __NR_fchdir (__NR_SYSCALL_BASE+133)
+#define __NR_bdflush (__NR_SYSCALL_BASE+134)
+#define __NR_sysfs (__NR_SYSCALL_BASE+135)
+#define __NR_personality (__NR_SYSCALL_BASE+136)
+
+#define __NR_setfsuid (__NR_SYSCALL_BASE+138)
+#define __NR_setfsgid (__NR_SYSCALL_BASE+139)
+#define __NR__llseek (__NR_SYSCALL_BASE+140)
+#define __NR_getdents (__NR_SYSCALL_BASE+141)
+#define __NR__newselect (__NR_SYSCALL_BASE+142)
+#define __NR_flock (__NR_SYSCALL_BASE+143)
+#define __NR_msync (__NR_SYSCALL_BASE+144)
+#define __NR_readv (__NR_SYSCALL_BASE+145)
+#define __NR_writev (__NR_SYSCALL_BASE+146)
+#define __NR_getsid (__NR_SYSCALL_BASE+147)
+#define __NR_fdatasync (__NR_SYSCALL_BASE+148)
+#define __NR__sysctl (__NR_SYSCALL_BASE+149)
+#define __NR_mlock (__NR_SYSCALL_BASE+150)
+#define __NR_munlock (__NR_SYSCALL_BASE+151)
+#define __NR_mlockall (__NR_SYSCALL_BASE+152)
+#define __NR_munlockall (__NR_SYSCALL_BASE+153)
+#define __NR_sched_setparam (__NR_SYSCALL_BASE+154)
+#define __NR_sched_getparam (__NR_SYSCALL_BASE+155)
+#define __NR_sched_setscheduler (__NR_SYSCALL_BASE+156)
+#define __NR_sched_getscheduler (__NR_SYSCALL_BASE+157)
+#define __NR_sched_yield (__NR_SYSCALL_BASE+158)
+#define __NR_sched_get_priority_max (__NR_SYSCALL_BASE+159)
+#define __NR_sched_get_priority_min (__NR_SYSCALL_BASE+160)
+#define __NR_sched_rr_get_interval (__NR_SYSCALL_BASE+161)
+#define __NR_nanosleep (__NR_SYSCALL_BASE+162)
+#define __NR_mremap (__NR_SYSCALL_BASE+163)
+#define __NR_setresuid (__NR_SYSCALL_BASE+164)
+#define __NR_getresuid (__NR_SYSCALL_BASE+165)
+
+#define __NR_poll (__NR_SYSCALL_BASE+168)
+#define __NR_nfsservctl (__NR_SYSCALL_BASE+169)
+#define __NR_setresgid (__NR_SYSCALL_BASE+170)
+#define __NR_getresgid (__NR_SYSCALL_BASE+171)
+#define __NR_prctl (__NR_SYSCALL_BASE+172)
+#define __NR_rt_sigreturn (__NR_SYSCALL_BASE+173)
+#define __NR_rt_sigaction (__NR_SYSCALL_BASE+174)
+#define __NR_rt_sigprocmask (__NR_SYSCALL_BASE+175)
+#define __NR_rt_sigpending (__NR_SYSCALL_BASE+176)
+#define __NR_rt_sigtimedwait (__NR_SYSCALL_BASE+177)
+#define __NR_rt_sigqueueinfo (__NR_SYSCALL_BASE+178)
+#define __NR_rt_sigsuspend (__NR_SYSCALL_BASE+179)
+#define __NR_pread64 (__NR_SYSCALL_BASE+180)
+#define __NR_pwrite64 (__NR_SYSCALL_BASE+181)
+#define __NR_chown (__NR_SYSCALL_BASE+182)
+#define __NR_getcwd (__NR_SYSCALL_BASE+183)
+#define __NR_capget (__NR_SYSCALL_BASE+184)
+#define __NR_capset (__NR_SYSCALL_BASE+185)
+#define __NR_sigaltstack (__NR_SYSCALL_BASE+186)
+#define __NR_sendfile (__NR_SYSCALL_BASE+187)
+
+#define __NR_vfork (__NR_SYSCALL_BASE+190)
+#define __NR_ugetrlimit (__NR_SYSCALL_BASE+191)
+#define __NR_mmap2 (__NR_SYSCALL_BASE+192)
+#define __NR_truncate64 (__NR_SYSCALL_BASE+193)
+#define __NR_ftruncate64 (__NR_SYSCALL_BASE+194)
+#define __NR_stat64 (__NR_SYSCALL_BASE+195)
+#define __NR_lstat64 (__NR_SYSCALL_BASE+196)
+#define __NR_fstat64 (__NR_SYSCALL_BASE+197)
+#define __NR_lchown32 (__NR_SYSCALL_BASE+198)
+#define __NR_getuid32 (__NR_SYSCALL_BASE+199)
+#define __NR_getgid32 (__NR_SYSCALL_BASE+200)
+#define __NR_geteuid32 (__NR_SYSCALL_BASE+201)
+#define __NR_getegid32 (__NR_SYSCALL_BASE+202)
+#define __NR_setreuid32 (__NR_SYSCALL_BASE+203)
+#define __NR_setregid32 (__NR_SYSCALL_BASE+204)
+#define __NR_getgroups32 (__NR_SYSCALL_BASE+205)
+#define __NR_setgroups32 (__NR_SYSCALL_BASE+206)
+#define __NR_fchown32 (__NR_SYSCALL_BASE+207)
+#define __NR_setresuid32 (__NR_SYSCALL_BASE+208)
+#define __NR_getresuid32 (__NR_SYSCALL_BASE+209)
+#define __NR_setresgid32 (__NR_SYSCALL_BASE+210)
+#define __NR_getresgid32 (__NR_SYSCALL_BASE+211)
+#define __NR_chown32 (__NR_SYSCALL_BASE+212)
+#define __NR_setuid32 (__NR_SYSCALL_BASE+213)
+#define __NR_setgid32 (__NR_SYSCALL_BASE+214)
+#define __NR_setfsuid32 (__NR_SYSCALL_BASE+215)
+#define __NR_setfsgid32 (__NR_SYSCALL_BASE+216)
+#define __NR_getdents64 (__NR_SYSCALL_BASE+217)
+#define __NR_pivot_root (__NR_SYSCALL_BASE+218)
+#define __NR_mincore (__NR_SYSCALL_BASE+219)
+#define __NR_madvise (__NR_SYSCALL_BASE+220)
+#define __NR_fcntl64 (__NR_SYSCALL_BASE+221)
+
+#define __NR_gettid (__NR_SYSCALL_BASE+224)
+#define __NR_readahead (__NR_SYSCALL_BASE+225)
+#define __NR_setxattr (__NR_SYSCALL_BASE+226)
+#define __NR_lsetxattr (__NR_SYSCALL_BASE+227)
+#define __NR_fsetxattr (__NR_SYSCALL_BASE+228)
+#define __NR_getxattr (__NR_SYSCALL_BASE+229)
+#define __NR_lgetxattr (__NR_SYSCALL_BASE+230)
+#define __NR_fgetxattr (__NR_SYSCALL_BASE+231)
+#define __NR_listxattr (__NR_SYSCALL_BASE+232)
+#define __NR_llistxattr (__NR_SYSCALL_BASE+233)
+#define __NR_flistxattr (__NR_SYSCALL_BASE+234)
+#define __NR_removexattr (__NR_SYSCALL_BASE+235)
+#define __NR_lremovexattr (__NR_SYSCALL_BASE+236)
+#define __NR_fremovexattr (__NR_SYSCALL_BASE+237)
+#define __NR_tkill (__NR_SYSCALL_BASE+238)
+#define __NR_sendfile64 (__NR_SYSCALL_BASE+239)
+#define __NR_futex (__NR_SYSCALL_BASE+240)
+#define __NR_sched_setaffinity (__NR_SYSCALL_BASE+241)
+#define __NR_sched_getaffinity (__NR_SYSCALL_BASE+242)
+#define __NR_io_setup (__NR_SYSCALL_BASE+243)
+#define __NR_io_destroy (__NR_SYSCALL_BASE+244)
+#define __NR_io_getevents (__NR_SYSCALL_BASE+245)
+#define __NR_io_submit (__NR_SYSCALL_BASE+246)
+#define __NR_io_cancel (__NR_SYSCALL_BASE+247)
+#define __NR_exit_group (__NR_SYSCALL_BASE+248)
+#define __NR_lookup_dcookie (__NR_SYSCALL_BASE+249)
+#define __NR_epoll_create (__NR_SYSCALL_BASE+250)
+#define __NR_epoll_ctl (__NR_SYSCALL_BASE+251)
+#define __NR_epoll_wait (__NR_SYSCALL_BASE+252)
+#define __NR_remap_file_pages (__NR_SYSCALL_BASE+253)
+
+#define __NR_set_tid_address (__NR_SYSCALL_BASE+256)
+#define __NR_timer_create (__NR_SYSCALL_BASE+257)
+#define __NR_timer_settime (__NR_SYSCALL_BASE+258)
+#define __NR_timer_gettime (__NR_SYSCALL_BASE+259)
+#define __NR_timer_getoverrun (__NR_SYSCALL_BASE+260)
+#define __NR_timer_delete (__NR_SYSCALL_BASE+261)
+#define __NR_clock_settime (__NR_SYSCALL_BASE+262)
+#define __NR_clock_gettime (__NR_SYSCALL_BASE+263)
+#define __NR_clock_getres (__NR_SYSCALL_BASE+264)
+#define __NR_clock_nanosleep (__NR_SYSCALL_BASE+265)
+#define __NR_statfs64 (__NR_SYSCALL_BASE+266)
+#define __NR_fstatfs64 (__NR_SYSCALL_BASE+267)
+#define __NR_tgkill (__NR_SYSCALL_BASE+268)
+#define __NR_utimes (__NR_SYSCALL_BASE+269)
+#define __NR_arm_fadvise64_64 (__NR_SYSCALL_BASE+270)
+#define __NR_pciconfig_iobase (__NR_SYSCALL_BASE+271)
+#define __NR_pciconfig_read (__NR_SYSCALL_BASE+272)
+#define __NR_pciconfig_write (__NR_SYSCALL_BASE+273)
+#define __NR_mq_open (__NR_SYSCALL_BASE+274)
+#define __NR_mq_unlink (__NR_SYSCALL_BASE+275)
+#define __NR_mq_timedsend (__NR_SYSCALL_BASE+276)
+#define __NR_mq_timedreceive (__NR_SYSCALL_BASE+277)
+#define __NR_mq_notify (__NR_SYSCALL_BASE+278)
+#define __NR_mq_getsetattr (__NR_SYSCALL_BASE+279)
+#define __NR_waitid (__NR_SYSCALL_BASE+280)
+#define __NR_socket (__NR_SYSCALL_BASE+281)
+#define __NR_bind (__NR_SYSCALL_BASE+282)
+#define __NR_connect (__NR_SYSCALL_BASE+283)
+#define __NR_listen (__NR_SYSCALL_BASE+284)
+#define __NR_accept (__NR_SYSCALL_BASE+285)
+#define __NR_getsockname (__NR_SYSCALL_BASE+286)
+#define __NR_getpeername (__NR_SYSCALL_BASE+287)
+#define __NR_socketpair (__NR_SYSCALL_BASE+288)
+#define __NR_send (__NR_SYSCALL_BASE+289)
+#define __NR_sendto (__NR_SYSCALL_BASE+290)
+#define __NR_recv (__NR_SYSCALL_BASE+291)
+#define __NR_recvfrom (__NR_SYSCALL_BASE+292)
+#define __NR_shutdown (__NR_SYSCALL_BASE+293)
+#define __NR_setsockopt (__NR_SYSCALL_BASE+294)
+#define __NR_getsockopt (__NR_SYSCALL_BASE+295)
+#define __NR_sendmsg (__NR_SYSCALL_BASE+296)
+#define __NR_recvmsg (__NR_SYSCALL_BASE+297)
+#define __NR_semop (__NR_SYSCALL_BASE+298)
+#define __NR_semget (__NR_SYSCALL_BASE+299)
+#define __NR_semctl (__NR_SYSCALL_BASE+300)
+#define __NR_msgsnd (__NR_SYSCALL_BASE+301)
+#define __NR_msgrcv (__NR_SYSCALL_BASE+302)
+#define __NR_msgget (__NR_SYSCALL_BASE+303)
+#define __NR_msgctl (__NR_SYSCALL_BASE+304)
+#define __NR_shmat (__NR_SYSCALL_BASE+305)
+#define __NR_shmdt (__NR_SYSCALL_BASE+306)
+#define __NR_shmget (__NR_SYSCALL_BASE+307)
+#define __NR_shmctl (__NR_SYSCALL_BASE+308)
+#define __NR_add_key (__NR_SYSCALL_BASE+309)
+#define __NR_request_key (__NR_SYSCALL_BASE+310)
+#define __NR_keyctl (__NR_SYSCALL_BASE+311)
+#define __NR_semtimedop (__NR_SYSCALL_BASE+312)
+#define __NR_vserver (__NR_SYSCALL_BASE+313)
+#define __NR_ioprio_set (__NR_SYSCALL_BASE+314)
+#define __NR_ioprio_get (__NR_SYSCALL_BASE+315)
+#define __NR_inotify_init (__NR_SYSCALL_BASE+316)
+#define __NR_inotify_add_watch (__NR_SYSCALL_BASE+317)
+#define __NR_inotify_rm_watch (__NR_SYSCALL_BASE+318)
+#define __NR_mbind (__NR_SYSCALL_BASE+319)
+#define __NR_get_mempolicy (__NR_SYSCALL_BASE+320)
+#define __NR_set_mempolicy (__NR_SYSCALL_BASE+321)
+
+#define __ARM_NR_BASE (__NR_SYSCALL_BASE+0x0f0000)
+#define __ARM_NR_breakpoint (__ARM_NR_BASE+1)
+#define __ARM_NR_cacheflush (__ARM_NR_BASE+2)
+#define __ARM_NR_usr26 (__ARM_NR_BASE+3)
+#define __ARM_NR_usr32 (__ARM_NR_BASE+4)
+#define __ARM_NR_set_tls (__ARM_NR_BASE+5)
+
+#if defined(__ARM_EABI__) && !defined(__KERNEL__)
+#undef __NR_time
+#undef __NR_umount
+#undef __NR_stime
+#undef __NR_alarm
+#undef __NR_utime
+#undef __NR_getrlimit
+#undef __NR_select
+#undef __NR_readdir
+#undef __NR_mmap
+#undef __NR_socketcall
+#undef __NR_syscall
+#undef __NR_ipc
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/user.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/user.h
new file mode 100644
index 0000000..5f25850
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/user.h
@@ -0,0 +1,61 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ARM_USER_H
+#define _ARM_USER_H
+
+#include <asm/page.h>
+#include <asm/ptrace.h>
+
+struct user_fp {
+ struct fp_reg {
+ unsigned int sign1:1;
+ unsigned int unused:15;
+ unsigned int sign2:1;
+ unsigned int exponent:14;
+ unsigned int j:1;
+ unsigned int mantissa1:31;
+ unsigned int mantissa0:32;
+ } fpregs[8];
+ unsigned int fpsr:32;
+ unsigned int fpcr:32;
+ unsigned char ftype[8];
+ unsigned int init_flag;
+};
+
+struct user{
+
+ struct pt_regs regs;
+
+ int u_fpvalid;
+
+ unsigned long int u_tsize;
+ unsigned long int u_dsize;
+ unsigned long int u_ssize;
+ unsigned long start_code;
+ unsigned long start_stack;
+ long int signal;
+ int reserved;
+ struct pt_regs * u_ar0;
+
+ unsigned long magic;
+ char u_comm[32];
+ int u_debugreg[8];
+ struct user_fp u_fp;
+ struct user_fp_struct * u_fp0;
+
+};
+#define NBPG PAGE_SIZE
+#define UPAGES 1
+#define HOST_TEXT_START_ADDR (u.start_code)
+#define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/vga.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/vga.h
new file mode 100644
index 0000000..7875dbf
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/vga.h
@@ -0,0 +1,23 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ *** This header was automatically generated from a Linux kernel header
+ *** of the same name, to make information necessary for userspace to
+ *** call into the kernel available to libc. It contains only constants,
+ *** structures, and macros generated from the original header, and thus,
+ *** contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef ASMARM_VGA_H
+#define ASMARM_VGA_H
+
+#include <asm/hardware.h>
+#include <asm/io.h>
+
+#define VGA_MAP_MEM(x,s) (PCIMEM_BASE + (x))
+
+#define vga_readb(x) (*((volatile unsigned char *)x))
+#define vga_writeb(x,y) (*((volatile unsigned char *)y) = (x))
+
+#endif
diff --git a/ndk/build/platforms/android-3/common/include/assert.h b/ndk/build/platforms/android-5/arch-arm/usr/include/assert.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/assert.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/assert.h
diff --git a/ndk/build/platforms/android-3/common/include/byteswap.h b/ndk/build/platforms/android-5/arch-arm/usr/include/byteswap.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/byteswap.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/byteswap.h
diff --git a/ndk/build/platforms/android-3/common/include/cstddef b/ndk/build/platforms/android-5/arch-arm/usr/include/cstddef
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/cstddef
copy to ndk/build/platforms/android-5/arch-arm/usr/include/cstddef
diff --git a/ndk/build/platforms/android-3/common/include/ctype.h b/ndk/build/platforms/android-5/arch-arm/usr/include/ctype.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/ctype.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/ctype.h
diff --git a/ndk/build/platforms/android-3/common/include/dirent.h b/ndk/build/platforms/android-5/arch-arm/usr/include/dirent.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/dirent.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/dirent.h
diff --git a/ndk/build/platforms/android-3/common/include/dlfcn.h b/ndk/build/platforms/android-5/arch-arm/usr/include/dlfcn.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/dlfcn.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/dlfcn.h
diff --git a/ndk/build/platforms/android-3/common/include/elf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/elf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/elf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/elf.h
diff --git a/ndk/build/platforms/android-3/common/include/endian.h b/ndk/build/platforms/android-5/arch-arm/usr/include/endian.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/endian.h
rename to ndk/build/platforms/android-5/arch-arm/usr/include/endian.h
diff --git a/ndk/build/platforms/android-3/common/include/err.h b/ndk/build/platforms/android-5/arch-arm/usr/include/err.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/err.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/err.h
diff --git a/ndk/build/platforms/android-3/common/include/errno.h b/ndk/build/platforms/android-5/arch-arm/usr/include/errno.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/errno.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/errno.h
diff --git a/ndk/build/platforms/android-3/common/include/fcntl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/fcntl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/fcntl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/fcntl.h
diff --git a/ndk/build/platforms/android-3/common/include/features.h b/ndk/build/platforms/android-5/arch-arm/usr/include/features.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/features.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/features.h
diff --git a/ndk/build/platforms/android-3/common/include/fnmatch.h b/ndk/build/platforms/android-5/arch-arm/usr/include/fnmatch.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/fnmatch.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/fnmatch.h
diff --git a/ndk/build/platforms/android-3/common/include/getopt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/getopt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/getopt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/getopt.h
diff --git a/ndk/build/platforms/android-3/common/include/grp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/grp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/grp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/grp.h
diff --git a/ndk/build/platforms/android-3/common/include/inttypes.h b/ndk/build/platforms/android-5/arch-arm/usr/include/inttypes.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/inttypes.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/inttypes.h
diff --git a/ndk/build/platforms/android-3/common/include/jni.h b/ndk/build/platforms/android-5/arch-arm/usr/include/jni.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/jni.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/jni.h
diff --git a/ndk/build/platforms/android-3/common/include/lastlog.h b/ndk/build/platforms/android-5/arch-arm/usr/include/lastlog.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/lastlog.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/lastlog.h
diff --git a/ndk/build/platforms/android-3/common/include/libgen.h b/ndk/build/platforms/android-5/arch-arm/usr/include/libgen.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/libgen.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/libgen.h
diff --git a/ndk/build/platforms/android-3/common/include/limits.h b/ndk/build/platforms/android-5/arch-arm/usr/include/limits.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/limits.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/limits.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/a.out.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/a.out.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/a.out.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/a.out.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/aio_abi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/aio_abi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/aio_abi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/aio_abi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/akm8976.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/akm8976.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/akm8976.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/akm8976.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/android_alarm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/android_alarm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/android_alarm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/android_alarm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/android_pmem.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/android_pmem.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/android_pmem.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/android_pmem.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/android_power.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/android_power.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/android_power.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/android_power.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/apm_bios.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/apm_bios.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/apm_bios.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/apm_bios.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ashmem.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ashmem.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ashmem.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ashmem.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ata.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ata.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ata.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ata.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/atm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/atm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/atm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/atm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmapi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmapi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/atmapi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmapi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/atmdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmioc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmioc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/atmioc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmioc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmppp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmppp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/atmppp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmppp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmsap.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmsap.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/atmsap.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmsap.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/attribute_container.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/attribute_container.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/attribute_container.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/attribute_container.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/auto_fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/auto_fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/auto_fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/auto_fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/autoconf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/autoconf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/autoconf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/autoconf.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/auxvec.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/auxvec.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/auxvec.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/auxvec.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/backing-dev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/backing-dev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/backing-dev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/backing-dev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/binder.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/binder.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/binder.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/binder.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/binfmts.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/binfmts.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/binfmts.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/binfmts.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/bio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/bio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/bio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/bio.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/bitmap.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/bitmap.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/bitmap.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/bitmap.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/bitops.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/bitops.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/bitops.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/bitops.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/blkdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/blkdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/blkdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/blkdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/blkpg.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/blkpg.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/blkpg.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/blkpg.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/blockgroup_lock.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/blockgroup_lock.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/blockgroup_lock.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/blockgroup_lock.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/big_endian.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/big_endian.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/byteorder/big_endian.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/big_endian.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/generic.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/generic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/byteorder/generic.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/generic.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/little_endian.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/little_endian.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/byteorder/little_endian.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/little_endian.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/swab.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/swab.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/byteorder/swab.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/swab.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/swabb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/swabb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/byteorder/swabb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/swabb.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/cache.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/cache.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/cache.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/cache.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/calc64.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/calc64.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/calc64.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/calc64.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/capability.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/capability.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/capability.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/capability.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/capi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/capi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/capi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/capi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/cdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/cdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/cdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/cdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/cdrom.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/cdrom.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/cdrom.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/cdrom.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/circ_buf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/circ_buf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/circ_buf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/circ_buf.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/clk.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/clk.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/clk.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/clk.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/coda.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/coda.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/coda.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/coda.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/coda_fs_i.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/coda_fs_i.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/coda_fs_i.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/coda_fs_i.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/compat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/compat.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/compat.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/compat.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/compiler-gcc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/compiler-gcc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/compiler-gcc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/compiler-gcc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/compiler.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/compiler.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/compiler.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/compiler.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/completion.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/completion.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/completion.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/completion.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/config.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/config.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/config.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/config.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/console_struct.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/console_struct.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/console_struct.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/console_struct.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/cpu.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/cpu.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/cpu.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/cpu.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/cpumask.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/cpumask.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/cpumask.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/cpumask.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ctype.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ctype.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ctype.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ctype.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/dccp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/dccp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/dccp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/dccp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/debug_locks.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/debug_locks.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/debug_locks.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/debug_locks.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/delay.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/delay.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/delay.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/delay.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/device.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/device.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/device.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/device.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/dirent.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/dirent.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/dirent.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/dirent.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/dm-ioctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/dm-ioctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/dm-ioctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/dm-ioctl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/dma-mapping.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/dma-mapping.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/dma-mapping.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/dma-mapping.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/dmaengine.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/dmaengine.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/dmaengine.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/dmaengine.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/efs_dir.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/efs_dir.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/efs_dir.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/efs_dir.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/efs_fs_i.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/efs_fs_i.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/efs_fs_i.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/efs_fs_i.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/efs_fs_sb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/efs_fs_sb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/efs_fs_sb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/efs_fs_sb.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/elevator.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/elevator.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/elevator.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/elevator.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/elf-em.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/elf-em.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/elf-em.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/elf-em.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/elf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/elf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/elf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/elf.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/err.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/err.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/err.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/err.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/errno.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/errno.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/errno.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/errno.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/errqueue.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/errqueue.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/errqueue.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/errqueue.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/etherdevice.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/etherdevice.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/etherdevice.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/etherdevice.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ext2_fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ext2_fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ext2_fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ext2_fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ext3_fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ext3_fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ext3_fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ext3_fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/fadvise.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/fadvise.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/fadvise.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/fadvise.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/fb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/fb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/fb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/fb.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/fcntl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/fcntl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/fcntl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/fcntl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/fd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/fd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/fd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/fd.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/file.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/file.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/file.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/file.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/filter.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/filter.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/filter.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/filter.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ftape.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ftape.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ftape.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ftape.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/futex.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/futex.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/futex.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/futex.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/genhd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/genhd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/genhd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/genhd.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/gfp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/gfp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/gfp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/gfp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/hardirq.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/hardirq.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/hardirq.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/hardirq.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/hdlc/ioctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/hdlc/ioctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/hdlc/ioctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/hdlc/ioctl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/hdreg.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/hdreg.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/hdreg.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/hdreg.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/hdsmart.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/hdsmart.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/hdsmart.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/hdsmart.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/highmem.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/highmem.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/highmem.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/highmem.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/hil.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/hil.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/hil.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/hil.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/i2c.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/i2c.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/i2c.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/i2c.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/icmp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/icmp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/icmp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/icmp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_arcnet.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_arcnet.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_arcnet.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_arcnet.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_arp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_arp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_arp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_arp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_bridge.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_bridge.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_bridge.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_bridge.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_ether.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_ether.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_ether.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_ether.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_fc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_fc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_fc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_fc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_fddi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_fddi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_fddi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_fddi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_hippi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_hippi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_hippi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_hippi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_packet.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_packet.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_packet.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_packet.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_ppp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_ppp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_ppp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_ppp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_tr.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_tr.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_tr.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_tr.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_tun.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_tun.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_tun.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_tun.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_vlan.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_vlan.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_vlan.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_vlan.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/in.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/in.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/in.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/in.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/in6.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/in6.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/in6.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/in6.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/init.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/init.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/init.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/init.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/inotify.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/inotify.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/inotify.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/inotify.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/input.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/input.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/input.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/input.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/interrupt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/interrupt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/interrupt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/interrupt.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ioctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ioctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ioctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ioctl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ioport.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ioport.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ioport.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ioport.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ioprio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ioprio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ioprio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ioprio.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ip.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ip.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ip.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ip.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ipc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipmi_msgdefs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipmi_msgdefs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ipmi_msgdefs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipmi_msgdefs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipmi_smi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipmi_smi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ipmi_smi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipmi_smi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipx.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipx.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ipx.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipx.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/irq.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/irq.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/irq.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/irq.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/irq_cpustat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/irq_cpustat.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/irq_cpustat.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/irq_cpustat.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/irqflags.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/irqflags.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/irqflags.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/irqflags.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/irqreturn.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/irqreturn.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/irqreturn.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/irqreturn.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/jbd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/jbd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/jbd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/jbd.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/jiffies.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/jiffies.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/jiffies.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/jiffies.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kd.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kdev_t.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kdev_t.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kdev_t.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kdev_t.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kernel.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kernel.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kernel.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kernel.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kernel_stat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kernel_stat.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kernel_stat.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kernel_stat.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kernelcapi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kernelcapi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kernelcapi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kernelcapi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kexec.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kexec.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kexec.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kexec.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/key.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/key.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/key.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/key.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/keyboard.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/keyboard.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/keyboard.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/keyboard.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/keychord.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/keychord.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/keychord.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/keychord.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/klist.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/klist.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/klist.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/klist.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kmod.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kmod.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kmod.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kmod.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kobject.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kobject.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kobject.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kobject.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kref.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kref.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kref.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kref.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ktime.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ktime.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ktime.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ktime.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/limits.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/limits.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/limits.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/limits.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/linkage.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/linkage.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/linkage.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/linkage.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/list.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/list.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/list.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/list.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/lockd/nlm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/lockd/nlm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/lockd/nlm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/lockd/nlm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/lockd/xdr.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/lockd/xdr.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/lockd/xdr.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/lockd/xdr.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/lockdep.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/lockdep.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/lockdep.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/lockdep.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/loop.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/loop.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/loop.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/loop.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/magic.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/magic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/magic.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/magic.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/major.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/major.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/major.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/major.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mc146818rtc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mc146818rtc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mc146818rtc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mc146818rtc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mca.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mca.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mca.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mca.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mempolicy.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mempolicy.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mempolicy.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mempolicy.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mempool.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mempool.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mempool.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mempool.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/miscdevice.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/miscdevice.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/miscdevice.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/miscdevice.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmc/card.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmc/card.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mmc/card.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmc/card.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmc/host.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmc/host.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mmc/host.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmc/host.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmc/mmc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmc/mmc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mmc/mmc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmc/mmc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmzone.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmzone.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mmzone.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmzone.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mod_devicetable.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mod_devicetable.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mod_devicetable.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mod_devicetable.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/module.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/module.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/module.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/module.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/moduleparam.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/moduleparam.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/moduleparam.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/moduleparam.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mount.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mount.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mount.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mount.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/msdos_fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/msdos_fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/msdos_fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/msdos_fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/msg.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/msg.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/msg.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/msg.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/msm_adsp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/msm_adsp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/msm_adsp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/msm_adsp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/msm_audio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/msm_audio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/msm_audio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/msm_audio.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/msm_mdp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/msm_mdp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/msm_mdp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/msm_mdp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mt9t013.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mt9t013.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mt9t013.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mt9t013.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/bbm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/bbm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/bbm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/bbm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/blktrans.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/blktrans.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/blktrans.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/blktrans.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/cfi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/cfi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/cfi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/cfi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/cfi_endian.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/cfi_endian.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/cfi_endian.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/cfi_endian.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/compatmac.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/compatmac.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/compatmac.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/compatmac.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/flashchip.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/flashchip.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/flashchip.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/flashchip.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/map.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/map.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/map.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/map.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/mtd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/mtd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/mtd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/mtd.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/nand.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/nand.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/nand.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/nand.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/nand_ecc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/nand_ecc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/nand_ecc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/nand_ecc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/nftl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/nftl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/nftl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/nftl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/onenand_regs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/onenand_regs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/onenand_regs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/onenand_regs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/partitions.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/partitions.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/partitions.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/partitions.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtio.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mutex-debug.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mutex-debug.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mutex-debug.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mutex-debug.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mutex.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mutex.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mutex.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mutex.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ncp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ncp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ncp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ncp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ncp_mount.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ncp_mount.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ncp_mount.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ncp_mount.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ncp_no.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ncp_no.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ncp_no.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ncp_no.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/net.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/net.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/net.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/net.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netdevice.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netdevice.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netdevice.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netdevice.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_common.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_common.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_ftp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_ftp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_sctp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_sctp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tcp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tcp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tuple_common.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tuple_common.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nfnetlink.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nfnetlink.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink_conntrack.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink_conntrack.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/x_tables.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/x_tables.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/x_tables.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/x_tables.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CLASSIFY.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CLASSIFY.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CONNSECMARK.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CONNSECMARK.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_NFQUEUE.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_NFQUEUE.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_SECMARK.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_SECMARK.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_comment.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_comment.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_comment.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_comment.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_connbytes.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_connbytes.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_conntrack.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_conntrack.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_dccp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_dccp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_dccp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_dccp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_esp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_esp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_esp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_esp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_helper.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_helper.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_helper.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_helper.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_length.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_length.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_length.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_length.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_limit.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_limit.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_limit.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_limit.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_mac.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_mac.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_mac.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_mac.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_multiport.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_multiport.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_multiport.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_multiport.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_physdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_physdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_physdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_physdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_pkttype.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_pkttype.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_quota.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_quota.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_quota.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_quota.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_realm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_realm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_realm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_realm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_sctp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_sctp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_sctp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_sctp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_state.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_state.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_state.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_state.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_statistic.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_statistic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_statistic.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_statistic.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_string.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_string.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_string.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_string.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpmss.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpmss.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpudp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpudp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_arp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_arp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_arp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_arp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_arp/arp_tables.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_arp/arp_tables.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_bridge.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_bridge.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_bridge.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_bridge.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat_rule.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat_rule.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_queue.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_queue.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_tables.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_tables.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_DSCP.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_DSCP.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ECN.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ECN.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_LOG.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_LOG.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_REJECT.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_REJECT.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TCPMSS.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TCPMSS.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TOS.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TOS.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TTL.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TTL.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ULOG.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ULOG.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_addrtype.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_addrtype.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ah.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ah.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_comment.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_comment.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_connbytes.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_connbytes.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dccp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dccp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dscp_.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dscp_.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_esp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_esp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_hashlimit.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_hashlimit.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_helper.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_helper.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_iprange.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_iprange.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_length.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_length.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_mac.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_mac.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_owner.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_owner.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_physdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_physdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_pkttype.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_pkttype.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_realm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_realm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_recent.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_recent.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_sctp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_sctp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_state.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_state.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_string.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_string.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_tos_.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_tos_.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6_tables.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6_tables.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_LOG.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_LOG.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_REJECT.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_REJECT.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ah.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ah.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_esp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_esp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_frag.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_frag.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ipv6header.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ipv6header.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_length.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_length.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_mac.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_mac.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_opts.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_opts.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_owner.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_owner.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_physdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_physdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_rt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_rt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netlink.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netlink.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netlink.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netlink.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs2.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs2.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfs2.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs2.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs3.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs3.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfs3.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs3.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs4.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs4.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfs4.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs4.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs_xdr.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs_xdr.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfs_xdr.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs_xdr.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsacl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsacl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsacl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsacl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/auth.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/auth.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/auth.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/auth.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/const.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/const.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/const.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/const.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/debug.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/debug.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/debug.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/debug.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/export.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/export.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/export.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/export.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/interface.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/interface.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/interface.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/interface.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/nfsfh.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/nfsfh.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/nfsfh.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/nfsfh.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/stats.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/stats.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/stats.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/stats.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/xdr.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/xdr.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/xdr.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/xdr.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/node.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/node.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/node.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/node.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nodemask.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nodemask.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nodemask.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nodemask.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/notifier.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/notifier.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/notifier.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/notifier.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/numa.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/numa.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/numa.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/numa.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nvram.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nvram.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nvram.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nvram.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/omap_csmi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/omap_csmi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/omap_csmi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/omap_csmi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pagemap.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pagemap.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pagemap.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pagemap.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/param.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/param.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/param.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/param.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/patchkey.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/patchkey.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/patchkey.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/patchkey.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pci.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pci.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pci.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pci.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pci_ids.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pci_ids.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pci_ids.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pci_ids.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pci_regs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pci_regs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pci_regs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pci_regs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/percpu.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/percpu.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/percpu.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/percpu.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/percpu_counter.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/percpu_counter.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/percpu_counter.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/percpu_counter.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/personality.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/personality.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/personality.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/personality.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pfkeyv2.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pfkeyv2.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pfkeyv2.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pfkeyv2.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pkt_cls.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pkt_cls.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pkt_cls.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pkt_cls.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pkt_sched.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pkt_sched.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pkt_sched.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pkt_sched.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/platform_device.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/platform_device.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/platform_device.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/platform_device.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/plist.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/plist.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/plist.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/plist.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pnp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pnp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pnp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pnp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/poll.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/poll.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/poll.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/poll.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/posix_acl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/posix_acl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/posix_acl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/posix_acl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/posix_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/posix_types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/posix_types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/posix_types.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ppdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ppdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ppdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ppdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ppp_defs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ppp_defs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ppp_defs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ppp_defs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/prctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/prctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/prctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/prctl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/preempt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/preempt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/preempt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/preempt.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/proc_fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/proc_fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/proc_fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/proc_fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ptrace.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ptrace.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ptrace.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ptrace.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/qic117.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/qic117.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/qic117.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/qic117.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/qnxtypes.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/qnxtypes.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/qnxtypes.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/qnxtypes.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/quota.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/quota.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/quota.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/quota.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/raid/md.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md_k.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md_k.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/raid/md_k.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md_k.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md_p.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md_p.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/raid/md_p.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md_p.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md_u.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md_u.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/raid/md_u.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md_u.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/xor.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/xor.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/raid/xor.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/xor.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/random.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/random.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/random.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/random.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/rbtree.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/rbtree.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/rbtree.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/rbtree.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/rcupdate.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/rcupdate.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/rcupdate.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/rcupdate.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/reboot.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/reboot.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/reboot.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/reboot.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/relay.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/relay.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/relay.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/relay.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/resource.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/resource.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/resource.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/resource.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/route.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/route.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/route.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/route.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/rtc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/rtc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/rtc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/rtc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/rtnetlink.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/rtnetlink.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/rtnetlink.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/rtnetlink.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/rwsem.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/rwsem.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/rwsem.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/rwsem.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sched.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sched.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sched.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sched.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sem.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sem.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sem.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sem.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/seq_file.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/seq_file.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/seq_file.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/seq_file.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/seqlock.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/seqlock.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/seqlock.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/seqlock.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/serial_core.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/serial_core.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/serial_core.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/serial_core.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/serial_reg.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/serial_reg.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/serial_reg.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/serial_reg.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/serio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/serio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/serio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/serio.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/shm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/shm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/shm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/shm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/signal.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/signal.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/signal.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/signal.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/skbuff.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/skbuff.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/skbuff.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/skbuff.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/slab.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/slab.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/slab.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/slab.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/smb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/smb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/smb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/smb.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/smp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/smp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/smp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/smp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/smp_lock.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/smp_lock.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/smp_lock.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/smp_lock.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/socket.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/socket.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/socket.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/socket.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sockios.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sockios.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sockios.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sockios.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/soundcard.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/soundcard.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/soundcard.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/soundcard.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/spinlock.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_api_smp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_api_smp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/spinlock_api_smp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_api_smp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_api_up.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_api_up.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/spinlock_api_up.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_api_up.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/spinlock_types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_types.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_types_up.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_types_up.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/spinlock_types_up.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_types_up.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_up.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_up.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/spinlock_up.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_up.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/stacktrace.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/stacktrace.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/stacktrace.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/stacktrace.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/stat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/stat.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/stat.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/stat.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/statfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/statfs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/statfs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/statfs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/stddef.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/stddef.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/stddef.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/stddef.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/string.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/string.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/string.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/string.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/stringify.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/stringify.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/stringify.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/stringify.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/auth.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/auth.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/auth.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/auth.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/auth_gss.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/auth_gss.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/auth_gss.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/auth_gss.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/clnt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/clnt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/clnt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/clnt.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/debug.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/debug.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/debug.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/debug.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_api.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/gss_api.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_api.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/gss_api.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_asn1.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_asn1.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_err.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/gss_err.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_err.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/gss_err.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/msg_prot.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/msg_prot.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/msg_prot.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/msg_prot.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/sched.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/sched.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/sched.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/sched.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/stats.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/stats.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/stats.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/stats.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/svc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/svc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/svc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/svc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/svcauth.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/svcauth.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/svcauth.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/svcauth.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/timer.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/timer.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/timer.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/timer.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/types.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/xdr.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/xdr.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/xdr.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/xdr.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/xprt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/xprt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/xprt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/xprt.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/swap.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/swap.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/swap.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/swap.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sysctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sysctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sysctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sysctl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sysdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sysdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sysdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sysdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sysfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sysfs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sysfs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sysfs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/taskstats.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/taskstats.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/taskstats.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/taskstats.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/taskstats_kern.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/taskstats_kern.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/taskstats_kern.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/taskstats_kern.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/tcp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/tcp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/tcp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/tcp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/telephony.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/telephony.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/telephony.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/telephony.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/termios.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/termios.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/termios.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/termios.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/textsearch.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/textsearch.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/textsearch.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/textsearch.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/thread_info.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/thread_info.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/thread_info.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/thread_info.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/threads.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/threads.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/threads.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/threads.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/time.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/time.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/time.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/time.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/timer.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/timer.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/timer.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/timer.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/times.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/times.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/times.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/times.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/timex.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/timex.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/timex.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/timex.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/tiocl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/tiocl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/tiocl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/tiocl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/transport_class.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/transport_class.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/transport_class.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/transport_class.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/tty.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/tty.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/tty.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/tty.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/types.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/udp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/udp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/udp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/udp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ufs_fs_i.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ufs_fs_i.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ufs_fs_i.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ufs_fs_i.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ufs_fs_sb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ufs_fs_sb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ufs_fs_sb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ufs_fs_sb.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/uio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/uio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/uio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/uio.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/un.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/un.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/un.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/un.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/unistd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/unistd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/unistd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/unistd.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/usb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/usb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/usb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/usb.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/usb_ch9.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/usb_ch9.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/usb_ch9.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/usb_ch9.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/usbdevice_fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/usbdevice_fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/usbdevice_fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/usbdevice_fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/user.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/user.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/user.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/user.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/utime.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/utime.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/utime.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/utime.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/utsname.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/utsname.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/utsname.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/utsname.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/version.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/version.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/version.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/version.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/vfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/vfs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/vfs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/vfs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/videodev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/videodev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/videodev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/videodev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/videodev2.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/videodev2.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/videodev2.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/videodev2.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/vmalloc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/vmalloc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/vmalloc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/vmalloc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/vt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/vt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/vt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/vt.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/vt_buffer.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/vt_buffer.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/vt_buffer.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/vt_buffer.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/wait.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/wait.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/wait.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/wait.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/wanrouter.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/wanrouter.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/wanrouter.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/wanrouter.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/wireless.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/wireless.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/wireless.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/wireless.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/workqueue.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/workqueue.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/workqueue.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/workqueue.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/xattr.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/xattr.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/xattr.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/xattr.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/zconf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/zconf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/zconf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/zconf.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/zlib.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/zlib.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/zlib.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/zlib.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/zorro_ids.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/zorro_ids.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/zorro_ids.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/zorro_ids.h
diff --git a/ndk/build/platforms/android-3/common/include/locale.h b/ndk/build/platforms/android-5/arch-arm/usr/include/locale.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/locale.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/locale.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/_types.h
new file mode 100644
index 0000000..6d10e12
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/_types.h
@@ -0,0 +1,127 @@
+/* $OpenBSD: _types.h,v 1.3 2006/02/14 18:12:58 miod Exp $ */
+
+/*-
+ * Copyright (c) 1990, 1993
+ * The Regents of the University of California. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * @(#)types.h 8.3 (Berkeley) 1/5/94
+ * @(#)ansi.h 8.2 (Berkeley) 1/4/94
+ */
+
+#ifndef _ARM__TYPES_H_
+#define _ARM__TYPES_H_
+
+
+#if !defined(__ARM_EABI__)
+/* the kernel defines size_t as unsigned int, but g++ wants it to be unsigned long */
+#define _SIZE_T
+#define _SSIZE_T
+#define _PTRDIFF_T
+typedef unsigned long size_t;
+typedef long ssize_t;
+typedef long ptrdiff_t;
+#endif
+
+//#include <linux/types.h>
+
+/* 7.18.1.1 Exact-width integer types */
+typedef __signed char __int8_t;
+typedef unsigned char __uint8_t;
+typedef short __int16_t;
+typedef unsigned short __uint16_t;
+typedef int __int32_t;
+typedef unsigned int __uint32_t;
+/* LONGLONG */
+typedef long long __int64_t;
+/* LONGLONG */
+typedef unsigned long long __uint64_t;
+
+/* 7.18.1.2 Minimum-width integer types */
+typedef __int8_t __int_least8_t;
+typedef __uint8_t __uint_least8_t;
+typedef __int16_t __int_least16_t;
+typedef __uint16_t __uint_least16_t;
+typedef __int32_t __int_least32_t;
+typedef __uint32_t __uint_least32_t;
+typedef __int64_t __int_least64_t;
+typedef __uint64_t __uint_least64_t;
+
+/* 7.18.1.3 Fastest minimum-width integer types */
+typedef __int32_t __int_fast8_t;
+typedef __uint32_t __uint_fast8_t;
+typedef __int32_t __int_fast16_t;
+typedef __uint32_t __uint_fast16_t;
+typedef __int32_t __int_fast32_t;
+typedef __uint32_t __uint_fast32_t;
+typedef __int64_t __int_fast64_t;
+typedef __uint64_t __uint_fast64_t;
+
+/* 7.18.1.4 Integer types capable of holding object pointers */
+typedef int __intptr_t;
+typedef unsigned int __uintptr_t;
+
+/* 7.18.1.5 Greatest-width integer types */
+typedef __int64_t __intmax_t;
+typedef __uint64_t __uintmax_t;
+
+/* Register size */
+typedef __int32_t __register_t;
+
+/* VM system types */
+typedef unsigned long __vaddr_t;
+typedef unsigned long __paddr_t;
+typedef unsigned long __vsize_t;
+typedef unsigned long __psize_t;
+
+/* Standard system types */
+typedef int __clock_t;
+typedef int __clockid_t;
+typedef long __ptrdiff_t;
+typedef int __time_t;
+typedef int __timer_t;
+#if defined(__GNUC__) && __GNUC__ >= 3
+typedef __builtin_va_list __va_list;
+#else
+typedef char * __va_list;
+#endif
+
+/* Wide character support types */
+#ifndef __cplusplus
+typedef int __wchar_t;
+#endif
+typedef int __wint_t;
+typedef int __rune_t;
+typedef void * __wctrans_t;
+typedef void * __wctype_t;
+
+#ifdef __ARMEB__
+#define _BYTE_ORDER _BIG_ENDIAN
+#else
+#define _BYTE_ORDER _LITTLE_ENDIAN
+#endif
+
+#endif /* _ARM__TYPES_H_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/asm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/asm.h
new file mode 100644
index 0000000..c7bd017
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/asm.h
@@ -0,0 +1,130 @@
+/* $OpenBSD: asm.h,v 1.1 2004/02/01 05:09:49 drahn Exp $ */
+/* $NetBSD: asm.h,v 1.4 2001/07/16 05:43:32 matt Exp $ */
+
+/*
+ * Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * William Jolitz.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * from: @(#)asm.h 5.5 (Berkeley) 5/7/91
+ */
+
+#ifndef _ARM32_ASM_H_
+#define _ARM32_ASM_H_
+
+#ifdef __ELF__
+# define _C_LABEL(x) x
+#else
+# ifdef __STDC__
+# define _C_LABEL(x) _ ## x
+# else
+# define _C_LABEL(x) _/**/x
+# endif
+#endif
+#define _ASM_LABEL(x) x
+
+#ifdef __STDC__
+# define __CONCAT(x,y) x ## y
+# define __STRING(x) #x
+#else
+# define __CONCAT(x,y) x/**/y
+# define __STRING(x) "x"
+#endif
+
+#ifndef _ALIGN_TEXT
+# define _ALIGN_TEXT .align 0
+#endif
+
+/*
+ * gas/arm uses @ as a single comment character and thus cannot be used here
+ * Instead it recognised the # instead of an @ symbols in .type directives
+ * We define a couple of macros so that assembly code will not be dependant
+ * on one or the other.
+ */
+#define _ASM_TYPE_FUNCTION #function
+#define _ASM_TYPE_OBJECT #object
+#define _ENTRY(x) \
+ .text; _ALIGN_TEXT; .globl x; .type x,_ASM_TYPE_FUNCTION; x:
+
+#ifdef GPROF
+# ifdef __ELF__
+# define _PROF_PROLOGUE \
+ mov ip, lr; bl __mcount
+# else
+# define _PROF_PROLOGUE \
+ mov ip,lr; bl mcount
+# endif
+#else
+# define _PROF_PROLOGUE
+#endif
+
+#define ENTRY(y) _ENTRY(_C_LABEL(y)); _PROF_PROLOGUE
+#define ENTRY_NP(y) _ENTRY(_C_LABEL(y))
+#define ASENTRY(y) _ENTRY(_ASM_LABEL(y)); _PROF_PROLOGUE
+#define ASENTRY_NP(y) _ENTRY(_ASM_LABEL(y))
+
+#define ASMSTR .asciz
+
+#if defined(__ELF__) && defined(PIC)
+#ifdef __STDC__
+#define PIC_SYM(x,y) x ## ( ## y ## )
+#else
+#define PIC_SYM(x,y) x/**/(/**/y/**/)
+#endif
+#else
+#define PIC_SYM(x,y) x
+#endif
+
+#ifdef __ELF__
+#define RCSID(x) .section ".ident"; .asciz x
+#else
+#define RCSID(x) .text; .asciz x
+#endif
+
+#ifdef __ELF__
+#define WEAK_ALIAS(alias,sym) \
+ .weak alias; \
+ alias = sym
+#endif
+
+#ifdef __STDC__
+#define WARN_REFERENCES(sym,msg) \
+ .stabs msg ## ,30,0,0,0 ; \
+ .stabs __STRING(_C_LABEL(sym)) ## ,1,0,0,0
+#elif defined(__ELF__)
+#define WARN_REFERENCES(sym,msg) \
+ .stabs msg,30,0,0,0 ; \
+ .stabs __STRING(sym),1,0,0,0
+#else
+#define WARN_REFERENCES(sym,msg) \
+ .stabs msg,30,0,0,0 ; \
+ .stabs __STRING(_/**/sym),1,0,0,0
+#endif /* __STDC__ */
+
+#endif /* !_ARM_ASM_H_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/cdefs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/cdefs.h
new file mode 100644
index 0000000..44f1542
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/cdefs.h
@@ -0,0 +1,19 @@
+/* $OpenBSD: cdefs.h,v 1.2 2005/11/24 20:46:44 deraadt Exp $ */
+
+#ifndef _MACHINE_CDEFS_H_
+#define _MACHINE_CDEFS_H_
+
+#if defined(lint)
+#define __indr_reference(sym,alias) __lint_equal__(sym,alias)
+#define __warn_references(sym,msg)
+#define __weak_alias(alias,sym) __lint_equal__(sym,alias)
+#elif defined(__GNUC__) && defined(__STDC__)
+#define __weak_alias(alias,sym) \
+ __asm__(".weak " __STRING(alias) " ; " __STRING(alias) \
+ " = " __STRING(sym));
+#define __warn_references(sym,msg) \
+ __asm__(".section .gnu.warning." __STRING(sym) \
+ " ; .ascii \"" msg "\" ; .text");
+#endif
+
+#endif /* !_MACHINE_CDEFS_H_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/cpu-features.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/cpu-features.h
new file mode 100644
index 0000000..f836006
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/cpu-features.h
@@ -0,0 +1,164 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _ARM_MACHINE_CPU_FEATURES_H
+#define _ARM_MACHINE_CPU_FEATURES_H
+
+/* The purpose of this file is to define several macros corresponding
+ * to CPU features that may or may not be available at build time on
+ * on the target CPU.
+ *
+ * This is done to abstract us from the various ARM Architecture
+ * quirks and alphabet soup.
+ *
+ * IMPORTANT: We have no intention to support anything below an ARMv4T !
+ */
+
+/* _ARM_ARCH_REVISION is a number corresponding to the ARM revision
+ * we're going to support
+ *
+ * it looks like our toolchain doesn't define __ARM_ARCH__
+ * so try to guess it.
+ *
+ *
+ *
+ */
+#ifndef __ARM_ARCH__
+
+# if defined __ARM_ARCH_7__ || defined __ARM_ARCH_7A__ || \
+ defined __ARM_ARCH_7R__ || defined __ARM_ARCH_7M__
+
+# define __ARM_ARCH__ 7
+
+# elif defined __ARM_ARCH_6__ || defined __ARM_ARCH_6J__ || \
+ defined __ARM_ARCH_6K__ || defined __ARM_ARCH_6Z__ || \
+ defined __ARM_ARCH_6KZ__ || defined __ARM_ARCH_6T2__
+#
+# define __ARM_ARCH__ 6
+#
+# elif defined __ARM_ARCH_5__ || defined __ARM_ARCH_5T__ || \
+ defined __ARM_ARCH_5TE__ || defined __ARM_ARCH_5TEJ__
+#
+# define __ARM_ARCH__ 5
+#
+# elif defined __ARM_ARCH_4T__
+#
+# define __ARM_ARCH__ 4
+#
+# elif defined __ARM_ARCH_4__
+# error ARMv4 is not supported, please use ARMv4T at a minimum
+# else
+# error Unknown or unsupported ARM architecture
+# endif
+#endif
+
+/* experimental feature used to check that our ARMv4 workarounds
+ * work correctly without a real ARMv4 machine */
+#ifdef BIONIC_EXPERIMENTAL_FORCE_ARMV4
+# undef __ARM_ARCH__
+# define __ARM_ARCH__ 4
+#endif
+
+/* define __ARM_HAVE_5TE if we have the ARMv5TE instructions */
+#if __ARM_ARCH__ > 5
+# define __ARM_HAVE_5TE 1
+#elif __ARM_ARCH__ == 5
+# if defined __ARM_ARCH_5TE__ || defined __ARM_ARCH_5TEJ__
+# define __ARM_HAVE_5TE 1
+# endif
+#endif
+
+/* instructions introduced in ARMv5 */
+#if __ARM_ARCH__ >= 5
+# define __ARM_HAVE_BLX 1
+# define __ARM_HAVE_CLZ 1
+# define __ARM_HAVE_LDC2 1
+# define __ARM_HAVE_MCR2 1
+# define __ARM_HAVE_MRC2 1
+# define __ARM_HAVE_STC2 1
+#endif
+
+/* ARMv5TE introduces a few instructions */
+#if __ARM_HAVE_5TE
+# define __ARM_HAVE_PLD 1
+# define __ARM_HAVE_MCRR 1
+# define __ARM_HAVE_MRRC 1
+#endif
+
+/* define __ARM_HAVE_HALFWORD_MULTIPLY when half-word multiply instructions
+ * this means variants of: smul, smulw, smla, smlaw, smlal
+ */
+#if __ARM_HAVE_5TE
+# define __ARM_HAVE_HALFWORD_MULTIPLY 1
+#endif
+
+/* define __ARM_HAVE_PAIR_LOAD_STORE when 64-bit memory loads and stored
+ * into/from a pair of 32-bit registers is supported throuhg 'ldrd' and 'strd'
+ */
+#if __ARM_HAVE_5TE
+# define __ARM_HAVE_PAIR_LOAD_STORE 1
+#endif
+
+/* define __ARM_HAVE_SATURATED_ARITHMETIC is you have the saturated integer
+ * arithmetic instructions: qdd, qdadd, qsub, qdsub
+ */
+#if __ARM_HAVE_5TE
+# define __ARM_HAVE_SATURATED_ARITHMETIC 1
+#endif
+
+/* define __ARM_HAVE_PC_INTERWORK when a direct assignment to the
+ * pc register will switch into thumb/ARM mode depending on bit 0
+ * of the new instruction address. Before ARMv5, this was not the
+ * case, and you have to write:
+ *
+ * mov r0, [<some address>]
+ * bx r0
+ *
+ * instead of:
+ *
+ * ldr pc, [<some address>]
+ *
+ * note that this affects any instruction that explicitely changes the
+ * value of the pc register, including ldm { ...,pc } or 'add pc, #offset'
+ */
+#if __ARM_ARCH__ >= 5
+# define __ARM_HAVE_PC_INTERWORK
+#endif
+
+
+/* Assembly-only macros */
+
+/* define a handy PLD(address) macro since the cache preload
+ * is an optional opcode
+ */
+#if __ARM_HAVE_PLD
+# define PLD(reg,offset) pld [reg, offset]
+#else
+# define PLD(reg,offset) /* nothing */
+#endif
+
+#endif /* _ARM_MACHINE_CPU_FEATURES_H */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/exec.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/exec.h
new file mode 100644
index 0000000..227b207
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/exec.h
@@ -0,0 +1,50 @@
+/* $OpenBSD: exec.h,v 1.9 2003/04/17 03:42:14 drahn Exp $ */
+/* $NetBSD: exec.h,v 1.6 1994/10/27 04:16:05 cgd Exp $ */
+
+/*
+ * Copyright (c) 1993 Christopher G. Demetriou
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _ARM_EXEC_H_
+#define _ARM_EXEC_H_
+
+#define __LDPGSZ 4096
+
+#define NATIVE_EXEC_ELF
+
+#define ARCH_ELFSIZE 32
+
+#define ELF_TARG_CLASS ELFCLASS32
+#define ELF_TARG_DATA ELFDATA2LSB
+#define ELF_TARG_MACH EM_ARM
+
+#define _NLIST_DO_AOUT
+#define _NLIST_DO_ELF
+
+#define _KERN_DO_AOUT
+#define _KERN_DO_ELF
+
+#endif /* _ARM_EXEC_H_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/ieee.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/ieee.h
new file mode 100644
index 0000000..5f9b89e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/ieee.h
@@ -0,0 +1,191 @@
+/* $OpenBSD: ieee.h,v 1.1 2004/02/01 05:09:49 drahn Exp $ */
+/* $NetBSD: ieee.h,v 1.2 2001/02/21 17:43:50 bjh21 Exp $ */
+
+/*
+ * Copyright (c) 1992, 1993
+ * The Regents of the University of California. All rights reserved.
+ *
+ * This software was developed by the Computer Systems Engineering group
+ * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
+ * contributed to Berkeley.
+ *
+ * All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the University of
+ * California, Lawrence Berkeley Laboratory.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the University of
+ * California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * @(#)ieee.h 8.1 (Berkeley) 6/11/93
+ */
+
+/*
+ * ieee.h defines the machine-dependent layout of the machine's IEEE
+ * floating point.
+ */
+
+/*
+ * Define the number of bits in each fraction and exponent.
+ *
+ * k k+1
+ * Note that 1.0 x 2 == 0.1 x 2 and that denorms are represented
+ *
+ * (-exp_bias+1)
+ * as fractions that look like 0.fffff x 2 . This means that
+ *
+ * -126
+ * the number 0.10000 x 2 , for instance, is the same as the normalized
+ *
+ * -127 -128
+ * float 1.0 x 2 . Thus, to represent 2 , we need one leading zero
+ *
+ * -129
+ * in the fraction; to represent 2 , we need two, and so on. This
+ *
+ * (-exp_bias-fracbits+1)
+ * implies that the smallest denormalized number is 2
+ *
+ * for whichever format we are talking about: for single precision, for
+ *
+ * -126 -149
+ * instance, we get .00000000000000000000001 x 2 , or 1.0 x 2 , and
+ *
+ * -149 == -127 - 23 + 1.
+ */
+
+/*
+ * The ARM has two sets of FP data formats. The FPA supports 32-bit, 64-bit
+ * and 96-bit IEEE formats, with the words in big-endian order. VFP supports
+ * 32-bin and 64-bit IEEE formats with the words in the CPU's native byte
+ * order.
+ *
+ * The FPA also has two packed decimal formats, but we ignore them here.
+ */
+
+#define SNG_EXPBITS 8
+#define SNG_FRACBITS 23
+
+#define DBL_EXPBITS 11
+#define DBL_FRACBITS 52
+
+#ifndef __VFP_FP__
+#define E80_EXPBITS 15
+#define E80_FRACBITS 64
+
+#define EXT_EXPBITS 15
+#define EXT_FRACBITS 112
+#endif
+
+struct ieee_single {
+ u_int sng_frac:23;
+ u_int sng_exponent:8;
+ u_int sng_sign:1;
+};
+
+#ifdef __VFP_FP__
+struct ieee_double {
+#ifdef __ARMEB__
+ u_int dbl_sign:1;
+ u_int dbl_exp:11;
+ u_int dbl_frach:20;
+ u_int dbl_fracl;
+#else /* !__ARMEB__ */
+ u_int dbl_fracl;
+ u_int dbl_frach:20;
+ u_int dbl_exp:11;
+ u_int dbl_sign:1;
+#endif /* !__ARMEB__ */
+};
+#else /* !__VFP_FP__ */
+struct ieee_double {
+ u_int dbl_frach:20;
+ u_int dbl_exp:11;
+ u_int dbl_sign:1;
+ u_int dbl_fracl;
+};
+
+union ieee_double_u {
+ double dblu_d;
+ struct ieee_double dblu_dbl;
+};
+
+
+struct ieee_e80 {
+ u_int e80_exp:15;
+ u_int e80_zero:16;
+ u_int e80_sign:1;
+ u_int e80_frach:31;
+ u_int e80_j:1;
+ u_int e80_fracl;
+};
+
+struct ieee_ext {
+ u_int ext_frach:16;
+ u_int ext_exp:15;
+ u_int ext_sign:1;
+ u_int ext_frachm;
+ u_int ext_fraclm;
+ u_int ext_fracl;
+};
+#endif /* !__VFP_FP__ */
+
+/*
+ * Floats whose exponent is in [1..INFNAN) (of whatever type) are
+ * `normal'. Floats whose exponent is INFNAN are either Inf or NaN.
+ * Floats whose exponent is zero are either zero (iff all fraction
+ * bits are zero) or subnormal values.
+ *
+ * A NaN is a `signalling NaN' if its QUIETNAN bit is clear in its
+ * high fraction; if the bit is set, it is a `quiet NaN'.
+ */
+#define SNG_EXP_INFNAN 255
+#define DBL_EXP_INFNAN 2047
+#ifndef __VFP_FP__
+#define E80_EXP_INFNAN 32767
+#define EXT_EXP_INFNAN 32767
+#endif /* !__VFP_FP__ */
+
+#if 0
+#define SNG_QUIETNAN (1 << 22)
+#define DBL_QUIETNAN (1 << 19)
+#ifndef __VFP_FP__
+#define E80_QUIETNAN (1 << 15)
+#define EXT_QUIETNAN (1 << 15)
+#endif /* !__VFP_FP__ */
+#endif
+
+/*
+ * Exponent biases.
+ */
+#define SNG_EXP_BIAS 127
+#define DBL_EXP_BIAS 1023
+#ifndef __VFP_FP__
+#define E80_EXP_BIAS 16383
+#define EXT_EXP_BIAS 16383
+#endif /* !__VFP_FP__ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/internal_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/internal_types.h
new file mode 100644
index 0000000..7e610b0
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/internal_types.h
@@ -0,0 +1,10 @@
+/* $OpenBSD: internal_types.h,v 1.2 2004/05/06 15:53:39 drahn Exp $ */
+/* Public domain */
+#ifndef _ARM_INTERNAL_TYPES_H_
+#define _ARM_INTERNAL_TYPES_H_
+
+#ifdef __CHAR_UNSIGNED__
+#define __machine_has_unsigned_chars
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/kernel.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/kernel.h
new file mode 100644
index 0000000..462b8e3
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/kernel.h
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _ARCH_ARM_KERNEL_H
+#define _ARCH_ARM_KERNEL_H
+
+/* this file contains kernel-specific definitions that were optimized out of
+ our processed kernel headers, but still useful nonetheless... */
+
+typedef unsigned long __kernel_blkcnt_t;
+typedef unsigned long __kernel_blksize_t;
+
+/* these aren't really defined by the kernel headers though... */
+typedef unsigned long __kernel_fsblkcnt_t;
+typedef unsigned long __kernel_fsfilcnt_t;
+typedef unsigned int __kernel_id_t;
+
+#endif /* _ARCH_ARM_KERNEL_H */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/limits.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/limits.h
new file mode 100644
index 0000000..f9c04fa
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/limits.h
@@ -0,0 +1,63 @@
+/* $OpenBSD: limits.h,v 1.3 2006/01/06 22:48:46 millert Exp $ */
+/* $NetBSD: limits.h,v 1.4 2003/04/28 23:16:18 bjh21 Exp $ */
+
+/*
+ * Copyright (c) 1988 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * from: @(#)limits.h 7.2 (Berkeley) 6/28/90
+ */
+
+#ifndef _ARM32_LIMITS_H_
+#define _ARM32_LIMITS_H_
+
+#include <sys/cdefs.h>
+
+#define MB_LEN_MAX 1 /* no multibyte characters */
+
+#ifndef SIZE_MAX
+#define SIZE_MAX UINT_MAX /* max value for a size_t */
+#endif
+#ifndef SSIZE_MAX
+#define SSIZE_MAX INT_MAX /* max value for a ssize_t */
+#endif
+
+#if __BSD_VISIBLE
+#define SIZE_T_MAX UINT_MAX /* max value for a size_t (historic) */
+
+#define UQUAD_MAX 0xffffffffffffffffULL /* max unsigned quad */
+#define QUAD_MAX 0x7fffffffffffffffLL /* max signed quad */
+#define QUAD_MIN (-0x7fffffffffffffffLL-1) /* min signed quad */
+
+#endif /* __BSD_VISIBLE */
+
+#define LONGLONG_BIT 64
+#define LONGLONG_MIN (-9223372036854775807LL-1)
+#define LONGLONG_MAX 9223372036854775807LL
+#define ULONGLONG_MAX 18446744073709551615ULL
+
+#endif /* _ARM32_LIMITS_H_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/setjmp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/setjmp.h
new file mode 100644
index 0000000..f20cab2
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/setjmp.h
@@ -0,0 +1,87 @@
+/* $OpenBSD: setjmp.h,v 1.1 2004/02/01 05:09:49 drahn Exp $ */
+/* $NetBSD: setjmp.h,v 1.2 2001/08/25 14:45:59 bjh21 Exp $ */
+
+/*
+ * machine/setjmp.h: machine dependent setjmp-related information.
+ */
+
+#ifdef __ELF__
+#define _JBLEN 64 /* size, in longs, of a jmp_buf */
+#else
+#define _JBLEN 29 /* size, in longs, of a jmp_buf */
+#endif
+
+/*
+ * NOTE: The internal structure of a jmp_buf is *PRIVATE*
+ * This information is provided as there is software
+ * that fiddles with this with obtain the stack pointer
+ * (yes really ! and its commercial !).
+ *
+ * Description of the setjmp buffer
+ *
+ * word 0 magic number (dependant on creator)
+ * 1 - 3 f4 fp register 4
+ * 4 - 6 f5 fp register 5
+ * 7 - 9 f6 fp register 6
+ * 10 - 12 f7 fp register 7
+ * 13 fpsr fp status register
+ * 14 r4 register 4
+ * 15 r5 register 5
+ * 16 r6 register 6
+ * 17 r7 register 7
+ * 18 r8 register 8
+ * 19 r9 register 9
+ * 20 r10 register 10 (sl)
+ * 21 r11 register 11 (fp)
+ * 22 r12 register 12 (ip)
+ * 23 r13 register 13 (sp)
+ * 24 r14 register 14 (lr)
+ * 25 signal mask (dependant on magic)
+ * 26 (con't)
+ * 27 (con't)
+ * 28 (con't)
+ *
+ * The magic number number identifies the jmp_buf and
+ * how the buffer was created as well as providing
+ * a sanity check
+ *
+ * A side note I should mention - Please do not tamper
+ * with the floating point fields. While they are
+ * always saved and restored at the moment this cannot
+ * be garenteed especially if the compiler happens
+ * to be generating soft-float code so no fp
+ * registers will be used.
+ *
+ * Whilst this can be seen an encouraging people to
+ * use the setjmp buffer in this way I think that it
+ * is for the best then if changes occur compiles will
+ * break rather than just having new builds falling over
+ * mysteriously.
+ */
+
+#define _JB_MAGIC__SETJMP 0x4278f500
+#define _JB_MAGIC_SETJMP 0x4278f501
+
+/* Valid for all jmp_buf's */
+
+#define _JB_MAGIC 0
+#define _JB_REG_F4 1
+#define _JB_REG_F5 4
+#define _JB_REG_F6 7
+#define _JB_REG_F7 10
+#define _JB_REG_FPSR 13
+#define _JB_REG_R4 14
+#define _JB_REG_R5 15
+#define _JB_REG_R6 16
+#define _JB_REG_R7 17
+#define _JB_REG_R8 18
+#define _JB_REG_R9 19
+#define _JB_REG_R10 20
+#define _JB_REG_R11 21
+#define _JB_REG_R12 22
+#define _JB_REG_R13 23
+#define _JB_REG_R14 24
+
+/* Only valid with the _JB_MAGIC_SETJMP magic */
+
+#define _JB_SIGMASK 25
diff --git a/ndk/build/platforms/android-3/common/include/malloc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/malloc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/malloc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/malloc.h
diff --git a/ndk/build/platforms/android-3/common/include/math.h b/ndk/build/platforms/android-5/arch-arm/usr/include/math.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/math.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/math.h
diff --git a/ndk/build/platforms/android-3/common/include/memory.h b/ndk/build/platforms/android-5/arch-arm/usr/include/memory.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/memory.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/memory.h
diff --git a/ndk/build/platforms/android-3/common/include/mntent.h b/ndk/build/platforms/android-5/arch-arm/usr/include/mntent.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/mntent.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/mntent.h
diff --git a/ndk/build/platforms/android-3/common/include/mtd/mtd-abi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/mtd/mtd-abi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/mtd/mtd-abi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/mtd/mtd-abi.h
diff --git a/ndk/build/platforms/android-3/common/include/mtd/mtd-user.h b/ndk/build/platforms/android-5/arch-arm/usr/include/mtd/mtd-user.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/mtd/mtd-user.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/mtd/mtd-user.h
diff --git a/ndk/build/platforms/android-3/common/include/net/ethertypes.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/ethertypes.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/ethertypes.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/ethertypes.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if_arp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if_arp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if_arp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if_arp.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if_dl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if_dl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if_dl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if_dl.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if_ether.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if_ether.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if_ether.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if_ether.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if_ieee1394.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if_ieee1394.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if_ieee1394.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if_ieee1394.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if_packet.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if_packet.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if_packet.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if_packet.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if_types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if_types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if_types.h
diff --git a/ndk/build/platforms/android-3/common/include/net/route.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/route.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/route.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/route.h
diff --git a/ndk/build/platforms/android-3/common/include/netdb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netdb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netdb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netdb.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/ether.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/ether.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/ether.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/ether.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/if_ether.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/if_ether.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/if_ether.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/if_ether.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/in.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/in.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/in.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/in.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/in6.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/in6.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/in6.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/in6.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/in_systm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/in_systm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/in_systm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/in_systm.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/ip.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/ip.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/ip.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/ip.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/ip_icmp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/ip_icmp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/ip_icmp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/ip_icmp.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/tcp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/tcp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/tcp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/tcp.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/udp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/udp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/udp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/udp.h
diff --git a/ndk/build/platforms/android-3/common/include/netpacket/packet.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netpacket/packet.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netpacket/packet.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netpacket/packet.h
diff --git a/ndk/build/platforms/android-3/common/include/new b/ndk/build/platforms/android-5/arch-arm/usr/include/new
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/new
copy to ndk/build/platforms/android-5/arch-arm/usr/include/new
diff --git a/ndk/build/platforms/android-3/common/include/nsswitch.h b/ndk/build/platforms/android-5/arch-arm/usr/include/nsswitch.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/nsswitch.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/nsswitch.h
diff --git a/ndk/build/platforms/android-3/common/include/pathconf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/pathconf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/pathconf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/pathconf.h
diff --git a/ndk/build/platforms/android-3/common/include/paths.h b/ndk/build/platforms/android-5/arch-arm/usr/include/paths.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/paths.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/paths.h
diff --git a/ndk/build/platforms/android-3/common/include/poll.h b/ndk/build/platforms/android-5/arch-arm/usr/include/poll.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/poll.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/poll.h
diff --git a/ndk/build/platforms/android-3/common/include/pthread.h b/ndk/build/platforms/android-5/arch-arm/usr/include/pthread.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/pthread.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/pthread.h
diff --git a/ndk/build/platforms/android-3/common/include/pwd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/pwd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/pwd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/pwd.h
diff --git a/ndk/build/platforms/android-3/common/include/resolv.h b/ndk/build/platforms/android-5/arch-arm/usr/include/resolv.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/resolv.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/resolv.h
diff --git a/ndk/build/platforms/android-3/common/include/sched.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sched.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sched.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sched.h
diff --git a/ndk/build/platforms/android-3/common/include/semaphore.h b/ndk/build/platforms/android-5/arch-arm/usr/include/semaphore.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/semaphore.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/semaphore.h
diff --git a/ndk/build/platforms/android-3/common/include/setjmp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/setjmp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/setjmp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/setjmp.h
diff --git a/ndk/build/platforms/android-3/common/include/sgtty.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sgtty.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sgtty.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sgtty.h
diff --git a/ndk/build/platforms/android-3/common/include/sha1.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sha1.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sha1.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sha1.h
diff --git a/ndk/build/platforms/android-3/common/include/signal.h b/ndk/build/platforms/android-5/arch-arm/usr/include/signal.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/signal.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/signal.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/stdint.h b/ndk/build/platforms/android-5/arch-arm/usr/include/stdint.h
new file mode 100644
index 0000000..237baa2
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/stdint.h
@@ -0,0 +1,266 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _STDINT_H
+#define _STDINT_H
+
+#include <stddef.h>
+#include <sys/_types.h>
+
+
+
+#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS)
+# define __STDINT_LIMITS
+#endif
+
+#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS)
+# define __STDINT_MACROS
+#endif
+
+/* the definitions of STDINT_LIMITS depend on those of STDINT_MACROS */
+#if defined __STDINT_LIMITS && !defined __STDINT_MACROS
+# define __STDINT_MACROS
+#endif
+
+#if !defined __STRICT_ANSI__ || __STDC_VERSION__ >= 199901L
+# define __STDC_INT64__
+#endif
+
+typedef __int8_t int8_t;
+typedef __uint8_t uint8_t;
+typedef __int16_t int16_t;
+typedef __uint16_t uint16_t;
+typedef __int32_t int32_t;
+typedef __uint32_t uint32_t;
+#if defined(__STDC_INT64__)
+typedef __int64_t int64_t;
+typedef __uint64_t uint64_t;
+#endif
+
+/*
+ * int8_t & uint8_t
+ */
+
+typedef int8_t int_least8_t;
+typedef int8_t int_fast8_t;
+
+typedef uint8_t uint_least8_t;
+typedef uint8_t uint_fast8_t;
+
+#ifdef __STDINT_LIMITS
+# define INT8_MIN (-128)
+# define INT8_MAX (127)
+# define INT_LEAST8_MIN INT8_MIN
+# define INT_LEAST8_MAX INT8_MAX
+# define INT_FAST8_MIN INT8_MIN
+# define INT_FAST8_MAX INT8_MAX
+
+# define UINT8_MAX (255U)
+# define UINT_LEAST8_MAX UINT8_MAX
+# define UINT_FAST8_MAX UINT8_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+# define INT8_C(c) c
+# define INT_LEAST8_C(c) INT8_C(c)
+# define INT_FAST8_C(c) INT8_C(c)
+
+# define UINT8_C(c) c ## U
+# define UINT_LEAST8_C(c) UINT8_C(c)
+# define UINT_FAST8_C(c) UINT8_C(c)
+#endif
+
+/*
+ * int16_t & uint16_t
+ */
+
+
+typedef int16_t int_least16_t;
+typedef int32_t int_fast16_t;
+
+typedef uint16_t uint_least16_t;
+typedef uint32_t uint_fast16_t;
+
+#ifdef __STDINT_LIMITS
+# define INT16_MIN (-32768)
+# define INT16_MAX (32767)
+# define INT_LEAST16_MIN INT16_MIN
+# define INT_LEAST16_MAX INT16_MAX
+# define INT_FAST16_MIN INT32_MIN
+# define INT_FAST16_MAX INT32_MAX
+
+# define UINT16_MAX (65535U)
+# define UINT_LEAST16_MAX UINT16_MAX
+# define UINT_FAST16_MAX UINT32_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+# define INT16_C(c) c
+# define INT_LEAST16_C(c) INT16_C(c)
+# define INT_FAST16_C(c) INT32_C(c)
+
+# define UINT16_C(c) c ## U
+# define UINT_LEAST16_C(c) UINT16_C(c)
+# define UINT_FAST16_C(c) UINT32_C(c)
+#endif
+
+/*
+ * int32_t & uint32_t
+ */
+
+typedef int32_t int_least32_t;
+typedef int32_t int_fast32_t;
+
+typedef uint32_t uint_least32_t;
+typedef uint32_t uint_fast32_t;
+
+#ifdef __STDINT_LIMITS
+# define INT32_MIN (-2147483647-1)
+# define INT32_MAX (2147483647)
+# define INT_LEAST32_MIN INT32_MIN
+# define INT_LEAST32_MAX INT32_MAX
+# define INT_FAST32_MIN INT32_MIN
+# define INT_FAST32_MAX INT32_MAX
+
+# define UINT32_MAX (4294967295U)
+# define UINT_LEAST32_MAX UINT32_MAX
+# define UINT_FAST32_MAX UINT32_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+# define INT32_C(c) c
+# define INT_LEAST32_C(c) INT32_C(c)
+# define INT_FAST32_C(c) INT32_C(c)
+
+# define UINT32_C(c) c ## U
+# define UINT_LEAST32_C(c) UINT32_C(c)
+# define UINT_FAST32_C(c) UINT32_C(c)
+#endif
+
+#if defined(__STDC_INT64__)
+/*
+ * int64_t
+ */
+typedef int64_t int_least64_t;
+typedef int64_t int_fast64_t;
+
+typedef uint64_t uint_least64_t;
+typedef uint64_t uint_fast64_t;
+
+
+#ifdef __STDINT_LIMITS
+# define INT64_MIN (__INT64_C(-9223372036854775807)-1)
+# define INT64_MAX (__INT64_C(9223372036854775807))
+# define INT_LEAST64_MIN INT64_MIN
+# define INT_LEAST64_MAX INT64_MAX
+# define INT_FAST64_MIN INT64_MIN
+# define INT_FAST64_MAX INT64_MAX
+# define UINT64_MAX (__UINT64_C(18446744073709551615))
+
+# define UINT_LEAST64_MAX UINT64_MAX
+# define UINT_FAST64_MAX UINT64_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+# define __INT64_C(c) c ## LL
+# define INT64_C(c) __INT64_C(c)
+# define INT_LEAST64_C(c) INT64_C(c)
+# define INT_FAST64_C(c) INT64_C(c)
+
+# define __UINT64_C(c) c ## ULL
+# define UINT64_C(c) __UINT64_C(c)
+# define UINT_LEAST64_C(c) UINT64_C(c)
+# define UINT_FAST64_C(c) UINT64_C(c)
+#endif
+
+
+# define __PRI64_RANK "ll"
+# define __PRIFAST_RANK ""
+# define __PRIPTR_RANK ""
+
+#endif /* __STDC_INT64__ */
+
+/*
+ * intptr_t & uintptr_t
+ */
+
+typedef int intptr_t;
+typedef unsigned int uintptr_t;
+
+# define INTPTR_MIN INT32_MIN
+# define INTPTR_MAX INT32_MAX
+# define UINTPTR_MAX UINT32_MAX
+# define INTPTR_C(c) INT32_C(c)
+# define UINTPTR_C(c) UINT32_C(c)
+# define PTRDIFF_C(c) INT32_C(c)
+# define PTRDIFF_MIN INT32_MIN
+# define PTRDIFF_MAX INT32_MAX
+
+
+/*
+ * intmax_t & uintmax_t
+ */
+
+#if defined(__STDC_INT64__)
+
+typedef uint64_t uintmax_t;
+typedef int64_t intmax_t;
+
+#define INTMAX_MIN INT64_MIN
+#define INTMAX_MAX INT64_MAX
+#define UINTMAX_MAX UINT64_MAX
+
+#define INTMAX_C(c) INT64_C(c)
+#define UINTMAX_C(c) UINT64_C(c)
+
+#else /* !__STDC_INT64__ */
+
+typedef uint32_t uintmax_t;
+typedef int32_t intmax_t;
+
+#define INTMAX_MIN INT32_MIN
+#define INTMAX_MAX INT32_MAX
+#define UINTMAX_MAX UINT32_MAX
+
+#define INTMAX_C(c) INT32_C(c)
+#define UINTMAX_C(c) UINT32_C(c)
+
+#endif /* !__STDC_INT64__ */
+
+
+/* size_t is defined by the GCC-specific <stddef.h> */
+#ifndef _SSIZE_T_DEFINED_
+#define _SSIZE_T_DEFINED_
+typedef long int ssize_t;
+#endif
+
+#define _BITSIZE 32
+
+/* Keep the kernel from trying to define these types... */
+#define __BIT_TYPES_DEFINED__
+
+#endif /* _STDINT_H */
diff --git a/ndk/build/platforms/android-3/common/include/stdio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/stdio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/stdio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/stdio.h
diff --git a/ndk/build/platforms/android-3/common/include/stdlib.h b/ndk/build/platforms/android-5/arch-arm/usr/include/stdlib.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/stdlib.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/stdlib.h
diff --git a/ndk/build/platforms/android-3/common/include/stl_pair.h b/ndk/build/platforms/android-5/arch-arm/usr/include/stl_pair.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/stl_pair.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/stl_pair.h
diff --git a/ndk/build/platforms/android-3/common/include/string.h b/ndk/build/platforms/android-5/arch-arm/usr/include/string.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/string.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/string.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/strings.h b/ndk/build/platforms/android-5/arch-arm/usr/include/strings.h
new file mode 100644
index 0000000..fee7dc4
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/strings.h
@@ -0,0 +1,56 @@
+/* $NetBSD: strings.h,v 1.10 2005/02/03 04:39:32 perry Exp $ */
+
+/*-
+ * Copyright (c) 1998 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Klaus Klein.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the NetBSD
+ * Foundation, Inc. and its contributors.
+ * 4. Neither the name of The NetBSD Foundation nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _STRINGS_H_
+#define _STRINGS_H_
+
+#include <sys/types.h>
+#include <sys/cdefs.h>
+
+__BEGIN_DECLS
+int bcmp(const void *, const void *, size_t);
+void bcopy(const void *, void *, size_t);
+void bzero(void *, size_t);
+int ffs(int);
+char *index(const char *, int);
+char *rindex(const char *, int);
+int strcasecmp(const char *, const char *);
+int strncasecmp(const char *, const char *, size_t);
+__END_DECLS
+
+#endif /* !defined(_STRINGS_H_) */
diff --git a/ndk/build/platforms/android-3/common/include/sys/_errdefs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/_errdefs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/_errdefs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/_errdefs.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/_sigdefs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/_sigdefs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/_sigdefs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/_sigdefs.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/_system_properties.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/_system_properties.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/_system_properties.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/_system_properties.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/_types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/_types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/_types.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/atomics.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/atomics.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/atomics.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/atomics.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/cdefs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/cdefs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/cdefs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/cdefs.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/cdefs_elf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/cdefs_elf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/cdefs_elf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/cdefs_elf.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/dirent.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/dirent.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/dirent.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/dirent.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/endian.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/endian.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/endian.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/endian.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/epoll.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/epoll.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/epoll.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/epoll.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/errno.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/errno.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/errno.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/errno.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/exec_elf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/exec_elf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/exec_elf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/exec_elf.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/file.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/file.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/file.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/file.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/fsuid.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/fsuid.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/fsuid.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/fsuid.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/inotify.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/inotify.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/inotify.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/inotify.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/ioctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/ioctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/ioctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/ioctl.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/ioctl_compat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/ioctl_compat.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/ioctl_compat.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/ioctl_compat.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/ipc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/ipc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/ipc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/ipc.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/klog.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/klog.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/klog.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/klog.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/limits.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/limits.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/limits.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/limits.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/linux-syscalls.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/linux-syscalls.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/linux-syscalls.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/linux-syscalls.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/linux-unistd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/linux-unistd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/linux-unistd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/linux-unistd.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/mman.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/mman.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/mman.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/mman.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/mount.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/mount.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/mount.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/mount.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/param.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/param.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/param.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/param.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/poll.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/poll.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/poll.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/poll.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/prctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/prctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/prctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/prctl.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/ptrace.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/ptrace.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/ptrace.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/ptrace.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/reboot.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/reboot.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/reboot.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/reboot.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/resource.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/resource.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/resource.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/resource.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/select.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/select.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/select.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/select.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/sendfile.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/sendfile.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/sendfile.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/sendfile.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/socket.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/socket.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/socket.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/socket.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/socketcalls.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/socketcalls.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/socketcalls.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/socketcalls.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/sys/stat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/stat.h
new file mode 100644
index 0000000..091ee6d
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/stat.h
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _SYS_STAT_H_
+#define _SYS_STAT_H_
+
+#include <sys/cdefs.h>
+#include <sys/types.h>
+#include <sys/time.h>
+#include <linux/stat.h>
+
+#include <endian.h>
+
+__BEGIN_DECLS
+
+/* really matches stat64 in the kernel, hence the padding
+ * Note: The kernel zero's the padded region because glibc might read them
+ * in the hope that the kernel has stretched to using larger sizes.
+ */
+struct stat {
+ unsigned long long st_dev;
+ unsigned char __pad0[4];
+
+ unsigned long __st_ino;
+ unsigned int st_mode;
+ unsigned int st_nlink;
+
+ unsigned long st_uid;
+ unsigned long st_gid;
+
+ unsigned long long st_rdev;
+ unsigned char __pad3[4];
+
+ long long st_size;
+ unsigned long st_blksize;
+ unsigned long long st_blocks;
+
+ unsigned long st_atime;
+ unsigned long st_atime_nsec;
+
+ unsigned long st_mtime;
+ unsigned long st_mtime_nsec;
+
+ unsigned long st_ctime;
+ unsigned long st_ctime_nsec;
+
+ unsigned long long st_ino;
+};
+
+/* For compatibility with GLibc, we provide macro aliases
+ * for the non-Posix nano-seconds accessors.
+ */
+#define st_atimensec st_atime_nsec
+#define st_mtimensec st_mtime_nsec
+#define st_ctimensec st_ctime_nsec
+
+extern int chmod(const char *, mode_t);
+extern int fchmod(int, mode_t);
+extern int mkdir(const char *, mode_t);
+
+extern int stat(const char *, struct stat *);
+extern int fstat(int, struct stat *);
+extern int lstat(const char *, struct stat *);
+extern int mknod(const char *, mode_t, dev_t);
+extern mode_t umask(mode_t);
+
+#define stat64 stat
+#define fstat64 fstat
+#define lstat64 lstat
+
+static __inline__ int mkfifo(const char *__p, mode_t __m)
+{
+ return mknod(__p, (__m & ~S_IFMT) | S_IFIFO, (dev_t)0);
+}
+
+extern int fstatat(int dirfd, const char *path, struct stat *buf, int flags);
+extern int mkdirat(int dirfd, const char *pathname, mode_t mode);
+extern int fchownat(int dirfd, const char *path, uid_t owner, gid_t group, int flags);
+extern int fchmodat(int dirfd, const char *path, mode_t mode, int flags);
+extern int renameat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath);
+
+__END_DECLS
+
+#endif /* _SYS_STAT_H_ */
diff --git a/ndk/build/platforms/android-3/common/include/sys/statfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/statfs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/statfs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/statfs.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/syscall.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/syscall.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/syscall.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/syscall.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/sysconf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/sysconf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/sysconf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/sysconf.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/sysinfo.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/sysinfo.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/sysinfo.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/sysinfo.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/syslimits.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/syslimits.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/syslimits.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/syslimits.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/sysmacros.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/sysmacros.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/sysmacros.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/sysmacros.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/system_properties.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/system_properties.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/system_properties.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/system_properties.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/time.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/time.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/time.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/time.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/timeb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/timeb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/timeb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/timeb.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/times.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/times.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/times.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/times.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/ttychars.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/ttychars.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/ttychars.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/ttychars.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/ttydev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/ttydev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/ttydev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/ttydev.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/types.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/uio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/uio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/uio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/uio.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/un.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/un.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/un.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/un.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/utime.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/utime.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/utime.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/utime.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/utsname.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/utsname.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/utsname.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/utsname.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/vfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/vfs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/vfs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/vfs.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/vt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/vt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/vt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/vt.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/wait.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/wait.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/wait.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/wait.h
diff --git a/ndk/build/platforms/android-3/common/include/syslog.h b/ndk/build/platforms/android-5/arch-arm/usr/include/syslog.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/syslog.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/syslog.h
diff --git a/ndk/build/platforms/android-3/common/include/termios.h b/ndk/build/platforms/android-5/arch-arm/usr/include/termios.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/termios.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/termios.h
diff --git a/ndk/build/platforms/android-3/common/include/thread_db.h b/ndk/build/platforms/android-5/arch-arm/usr/include/thread_db.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/thread_db.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/thread_db.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/time.h b/ndk/build/platforms/android-5/arch-arm/usr/include/time.h
new file mode 100644
index 0000000..6163c6d
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/time.h
@@ -0,0 +1,115 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _TIME_H_
+#define _TIME_H_
+
+#include <sys/cdefs.h>
+#include <sys/time.h>
+
+#define __ARCH_SI_UID_T __kernel_uid32_t
+#include <asm/siginfo.h>
+#undef __ARCH_SI_UID_T
+
+__BEGIN_DECLS
+
+extern time_t time(time_t *);
+extern int nanosleep(const struct timespec *, struct timespec *);
+
+extern char *strtotimeval(const char *str, struct timeval *tv);
+
+struct tm {
+ int tm_sec; /* seconds */
+ int tm_min; /* minutes */
+ int tm_hour; /* hours */
+ int tm_mday; /* day of the month */
+ int tm_mon; /* month */
+ int tm_year; /* year */
+ int tm_wday; /* day of the week */
+ int tm_yday; /* day in the year */
+ int tm_isdst; /* daylight saving time */
+
+ long int tm_gmtoff; /* Seconds east of UTC. */
+ const char *tm_zone; /* Timezone abbreviation. */
+
+};
+
+/* defining TM_ZONE indicates that we have a "timezone abbreviation" field in
+ * struct tm, the value should be the field name
+ */
+#define TM_ZONE tm_zone
+
+extern char* asctime(const struct tm* a);
+extern char* asctime_r(const struct tm* a, char* buf);
+
+/* Return the difference between TIME1 and TIME0. */
+extern double difftime (time_t __time1, time_t __time0);
+extern time_t mktime (struct tm *a);
+
+extern struct tm* localtime(const time_t *t);
+extern struct tm* localtime_r(const time_t *timep, struct tm *result);
+
+extern struct tm* gmtime(const time_t *timep);
+extern struct tm* gmtime_r(const time_t *timep, struct tm *result);
+
+extern char* strptime(const char *buf, const char *fmt, struct tm *tm);
+extern size_t strftime(char *s, size_t max, const char *format, const struct tm *tm);
+
+extern char *ctime(const time_t *timep);
+extern char *ctime_r(const time_t *timep, char *buf);
+
+extern void tzset(void);
+
+/* global includes */
+extern char* tzname[];
+extern int daylight;
+extern long int timezone;
+
+#define CLOCKS_PER_SEC 1000000
+
+extern clock_t clock(void);
+
+/* BIONIC: extra linux clock goodies */
+extern int clock_getres(int, struct timespec *);
+extern int clock_gettime(int, struct timespec *);
+
+#define CLOCK_REALTIME 0
+#define CLOCK_MONOTONIC 1
+#define CLOCK_PROCESS_CPUTIME_ID 2
+#define CLOCK_THREAD_CPUTIME_ID 3
+#define CLOCK_REALTIME_HR 4
+#define CLOCK_MONOTONIC_HR 5
+
+extern int timer_create(int, struct sigevent*, timer_t*);
+extern int timer_delete(timer_t);
+extern int timer_settime(timer_t timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue);
+extern int timer_gettime(timer_t timerid, struct itimerspec *value);
+extern int timer_getoverrun(timer_t timerid);
+
+__END_DECLS
+
+#endif /* _TIME_H_ */
diff --git a/ndk/build/platforms/android-3/common/include/time64.h b/ndk/build/platforms/android-5/arch-arm/usr/include/time64.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/time64.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/time64.h
diff --git a/ndk/build/platforms/android-3/common/include/typeinfo b/ndk/build/platforms/android-5/arch-arm/usr/include/typeinfo
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/typeinfo
copy to ndk/build/platforms/android-5/arch-arm/usr/include/typeinfo
diff --git a/ndk/build/platforms/android-3/common/include/unistd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/unistd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/unistd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/unistd.h
diff --git a/ndk/build/platforms/android-3/common/include/util.h b/ndk/build/platforms/android-5/arch-arm/usr/include/util.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/util.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/util.h
diff --git a/ndk/build/platforms/android-3/common/include/utility b/ndk/build/platforms/android-5/arch-arm/usr/include/utility
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/utility
copy to ndk/build/platforms/android-5/arch-arm/usr/include/utility
diff --git a/ndk/build/platforms/android-3/common/include/utime.h b/ndk/build/platforms/android-5/arch-arm/usr/include/utime.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/utime.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/utime.h
diff --git a/ndk/build/platforms/android-3/common/include/utmp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/utmp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/utmp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/utmp.h
diff --git a/ndk/build/platforms/android-3/common/include/wchar.h b/ndk/build/platforms/android-5/arch-arm/usr/include/wchar.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/wchar.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/wchar.h
diff --git a/ndk/build/platforms/android-3/common/include/wctype.h b/ndk/build/platforms/android-5/arch-arm/usr/include/wctype.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/wctype.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/wctype.h
diff --git a/ndk/build/platforms/android-3/common/include/zconf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/zconf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/zconf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/zconf.h
diff --git a/ndk/build/platforms/android-3/common/include/zlib.h b/ndk/build/platforms/android-5/arch-arm/usr/include/zlib.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/zlib.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/zlib.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/crtbegin_dynamic.o b/ndk/build/platforms/android-5/arch-arm/usr/lib/crtbegin_dynamic.o
new file mode 100644
index 0000000..63d4efa
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/crtbegin_dynamic.o
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/crtbegin_static.o b/ndk/build/platforms/android-5/arch-arm/usr/lib/crtbegin_static.o
new file mode 100644
index 0000000..d11c79e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/crtbegin_static.o
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/crtend_android.o b/ndk/build/platforms/android-5/arch-arm/usr/lib/crtend_android.o
new file mode 100644
index 0000000..5b76af8
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/crtend_android.o
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libGLESv1_CM.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libGLESv1_CM.so
new file mode 100644
index 0000000..f61f631
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libGLESv1_CM.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libGLESv2.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libGLESv2.so
new file mode 100644
index 0000000..fa6557b
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libGLESv2.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libc.a b/ndk/build/platforms/android-5/arch-arm/usr/lib/libc.a
new file mode 100644
index 0000000..4fdcafc
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libc.a
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libc.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libc.so
new file mode 100644
index 0000000..9714e97
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libc.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libdl.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libdl.so
new file mode 100644
index 0000000..e2a589c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libdl.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/liblog.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/liblog.so
new file mode 100644
index 0000000..92bf1a7
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/liblog.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libm.a b/ndk/build/platforms/android-5/arch-arm/usr/lib/libm.a
new file mode 100644
index 0000000..3e1ccb0
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libm.a
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libm.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libm.so
new file mode 100644
index 0000000..87f4446
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libm.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libstdc++.a b/ndk/build/platforms/android-5/arch-arm/usr/lib/libstdc++.a
new file mode 100644
index 0000000..8f495a5
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libstdc++.a
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libstdc++.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libstdc++.so
new file mode 100644
index 0000000..d3d103f
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libstdc++.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libthread_db.a b/ndk/build/platforms/android-5/arch-arm/usr/lib/libthread_db.a
new file mode 100644
index 0000000..9d634be
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libthread_db.a
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libthread_db.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libthread_db.so
new file mode 100644
index 0000000..ea603f0
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libthread_db.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libz.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libz.so
new file mode 100644
index 0000000..f50a0ff
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libz.so
Binary files differ
diff --git a/ndk/build/toolchains/arm-eabi-4.2.1/config.mk b/ndk/build/toolchains/arm-eabi-4.2.1/config.mk
index 1b5cf02..c6297c2 100644
--- a/ndk/build/toolchains/arm-eabi-4.2.1/config.mk
+++ b/ndk/build/toolchains/arm-eabi-4.2.1/config.mk
@@ -16,4 +16,4 @@
# config file for the arm-eabi-4.2.1 toolchain for the Android NDK
# the real meat is in the setup.mk file adjacent to this one
#
-TOOLCHAIN_ABIS := arm
+TOOLCHAIN_ABIS := armeabi
diff --git a/ndk/build/toolchains/arm-eabi-4.4.0/config.mk b/ndk/build/toolchains/arm-eabi-4.4.0/config.mk
new file mode 100644
index 0000000..43a28fa
--- /dev/null
+++ b/ndk/build/toolchains/arm-eabi-4.4.0/config.mk
@@ -0,0 +1,19 @@
+# Copyright (C) 2009 The Android Open Source 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.
+#
+
+# config file for the arm-eabi-4.4.0 toolchain for the Android NDK
+# the real meat is in the setup.mk file adjacent to this one
+#
+TOOLCHAIN_ABIS := armeabi armeabi-v7a
diff --git a/ndk/build/toolchains/arm-eabi-4.4.0/setup.mk b/ndk/build/toolchains/arm-eabi-4.4.0/setup.mk
new file mode 100644
index 0000000..cbdeed5
--- /dev/null
+++ b/ndk/build/toolchains/arm-eabi-4.4.0/setup.mk
@@ -0,0 +1,139 @@
+# Copyright (C) 2009 The Android Open Source 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.
+#
+
+# this file is used to prepare the NDK to build with the arm-eabi-4.4.0
+# toolchain any number of source files
+#
+# its purpose is to define (or re-define) templates used to build
+# various sources into target object files, libraries or executables.
+#
+# Note that this file may end up being parsed several times in future
+# revisions of the NDK.
+#
+
+TOOLCHAIN_NAME := arm-eabi-4.4.0
+TOOLCHAIN_PREFIX := $(HOST_PREBUILT)/$(TOOLCHAIN_NAME)/bin/arm-eabi-
+
+TARGET_CFLAGS.common := \
+ -I$(SYSROOT)/usr/include \
+ -fpic \
+ -mthumb-interwork \
+ -ffunction-sections \
+ -funwind-tables \
+ -fstack-protector \
+ -fno-short-enums \
+ -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ \
+ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ \
+
+ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
+ TARGET_ARCH_CFLAGS := -march=armv7-a \
+ -mfloat-abi=softfp \
+ -mfpu=neon
+ TARGET_ARCH_LDFLAGS := -Wl,--fix-cortex-a8
+else
+ TARGET_ARCH_CFLAGS := -march=armv5te \
+ -mtune=xscale \
+ -msoft-float
+ TARGET_ARCH_LDFLAGS :=
+endif
+
+TARGET_arm_release_CFLAGS := -O2 \
+ -fomit-frame-pointer \
+ -fstrict-aliasing \
+ -funswitch-loops \
+ -finline-limit=300
+
+TARGET_thumb_release_CFLAGS := -mthumb \
+ -Os \
+ -fomit-frame-pointer \
+ -fno-strict-aliasing \
+ -finline-limit=64
+
+# When building for debug, compile everything as arm.
+TARGET_arm_debug_CFLAGS := $(TARGET_arm_release_CFLAGS) \
+ -fno-omit-frame-pointer \
+ -fno-strict-aliasing
+
+TARGET_thumb_debug_CFLAGS := $(TARGET_thumb_release_CFLAGS) \
+ -marm \
+ -fno-omit-frame-pointer
+
+TARGET_CC := $(TOOLCHAIN_PREFIX)gcc
+TARGET_CFLAGS := $(TARGET_CFLAGS.common) $(TARGET_ARCH_CFLAGS)
+
+
+TARGET_CXX := $(TOOLCHAIN_PREFIX)g++
+TARGET_CXXFLAGS := $(TARGET_CFLAGS.common) $(TARGET_ARCH_CFLAGS) -fno-exceptions -fno-rtti
+
+TARGET_LD := $(TOOLCHAIN_PREFIX)ld
+TARGET_LDFLAGS := $(TARGET_ARCH_LDFLAGS)
+
+TARGET_AR := $(TOOLCHAIN_PREFIX)ar
+TARGET_ARFLAGS := crs
+
+TARGET_LIBGCC := $(shell $(TARGET_CC) -mthumb-interwork -print-libgcc-file-name)
+TARGET_LDLIBS := -Wl,-rpath-link=$(SYSROOT)/usr/lib
+
+# These flags are used to ensure that a binary doesn't reference undefined
+# flags.
+TARGET_NO_UNDEFINED_LDFLAGS := -Wl,--no-undefined
+
+# NOTE: Ensure that TARGET_LIBGCC is placed after all private objects
+# and static libraries, but before any other library in the link
+# command line when generating shared libraries and executables.
+#
+# This ensures that all libgcc.a functions required by the target
+# will be included into it, instead of relying on what's available
+# on other libraries like libc.so, which may change between system
+# releases due to toolchain or library changes.
+#
+define cmd-build-shared-library
+$(TARGET_CC) \
+ -nostdlib -Wl,-soname,$(notdir $@) \
+ -Wl,-shared,-Bsymbolic \
+ $(PRIVATE_OBJECTS) \
+ -Wl,--whole-archive \
+ $(PRIVATE_WHOLE_STATIC_LIBRARIES) \
+ -Wl,--no-whole-archive \
+ $(PRIVATE_STATIC_LIBRARIES) \
+ $(TARGET_LIBGCC) \
+ $(PRIVATE_SHARED_LIBRARIES) \
+ $(PRIVATE_LDFLAGS) \
+ $(PRIVATE_LDLIBS) \
+ -o $@
+endef
+
+define cmd-build-executable
+$(TARGET_CC) \
+ -nostdlib -Bdynamic \
+ -Wl,-dynamic-linker,/system/bin/linker \
+ -Wl,--gc-sections \
+ -Wl,-z,nocopyreloc \
+ $(TARGET_CRTBEGIN_DYNAMIC_O) \
+ $(PRIVATE_OBJECTS) \
+ $(PRIVATE_STATIC_LIBRARIES) \
+ $(TARGET_LIBGCC) \
+ $(PRIVATE_SHARED_LIBRARIES) \
+ $(PRIVATE_LDFLAGS) \
+ $(PRIVATE_LDLIBS) \
+ $(TARGET_CRTEND_O) \
+ -o $@
+endef
+
+define cmd-build-static-library
+$(TARGET_AR) $(TARGET_ARFLAGS) $@ $(PRIVATE_OBJECTS)
+endef
+
+cmd-strip = $(TOOLCHAIN_PREFIX)strip --strip-debug $1
diff --git a/ndk/build/tools/build-ndk-sysroot.sh b/ndk/build/tools/build-ndk-sysroot.sh
index 8741220..c9f3285 100755
--- a/ndk/build/tools/build-ndk-sysroot.sh
+++ b/ndk/build/tools/build-ndk-sysroot.sh
@@ -28,7 +28,7 @@
# WARNING: For now, only a single target ABI/Architecture us supported
#
-source `dirname $0`/../core/ndk-common.sh
+. `dirname $0`/../core/ndk-common.sh
# PLATFORM is the name of the current Android system platform
PLATFORM=android-3
diff --git a/ndk/build/tools/build-toolchain.sh b/ndk/build/tools/build-toolchain.sh
index 95bf100..7bed99a 100755
--- a/ndk/build/tools/build-toolchain.sh
+++ b/ndk/build/tools/build-toolchain.sh
@@ -21,70 +21,101 @@
#
# include common function and variable definitions
-source `dirname $0`/../core/ndk-common.sh
+. `dirname $0`/../core/ndk-common.sh
# number of jobs to run in parallel when running make
JOBS=$HOST_NUM_CPUS
-TOOLCHAIN_NAME=arm-eabi-4.2.1
PLATFORM=android-3
ABI=arm
+GCC_VERSION=4.2.1
+GDB_VERSION=6.6
+BINUTILS_VERSION=2.17
+RELEASE=`date +%Y%m%d`
+BUILD_OUT=`mktemp -d /tmp/ndk-toolchain-XXX`
OPTION_HELP=no
OPTION_PLATFORM=
OPTION_FORCE_32=no
OPTION_REBUILD=no
+OPTION_GCC_VERSION=
+OPTION_GDB_VERSION=
+OPTION_PACKAGE=
+OPTION_RELEASE=
+OPTION_BUILD_OUT=
VERBOSE=no
for opt do
- optarg=`expr "x$opt" : 'x[^=]*=\(.*\)'`
- case "$opt" in
- --help|-h|-\?) OPTION_HELP=yes
- ;;
- --verbose)
- if [ "$VERBOSE" = "yes" ] ; then
- VERBOSE2=yes
- else
+ optarg=`expr "x$opt" : 'x[^=]*=\(.*\)'`
+ case "$opt" in
+ --help|-h|-\?) OPTION_HELP=yes
+ ;;
+ --verbose)
+ if [ "$VERBOSE" = "yes" ] ; then
+ VERBOSE2=yes
+ else
+ VERBOSE=yes
+ fi
+ ;;
+ --gcc-version=*)
+ OPTION_GCC_VERSION=$optarg
+ ;;
+ --gdb-version=*)
+ OPTION_GDB_VERSION=$optarg
+ ;;
+ --package=*)
+ OPTION_PACKAGE="$optarg"
+ ;;
+ --platform=*)
+ PLATFORM=$optarg
+ ;;
+ --build-out=*)
+ OPTION_BUILD_OUT="$optarg"
+ ;;
+ --abi=*)
+ ABI=$optarg
+ ;;
+ --release=*)
+ OPTION_RELEASE=$optarg
+ ;;
+ --force-download)
+ OPTION_FORCE_DOWNLOAD=yes
+ OPTION_FORCE_BUILD=yes
+ ;;
+ --force-build)
+ OPTION_FORCE_BUILD=yes
+ ;;
+ --verbose)
VERBOSE=yes
- fi
- ;;
- --toolchain=*)
- TOOLCHAIN_NAME=$optarg
- ;;
- --platform=*)
- PLATFORM=$optarg
- ;;
- --abi=*)
- ABI=$optarg
- ;;
- --force-download)
- OPTION_FORCE_DOWNLOAD=yes
- OPTION_FORCE_BUILD=yes
- ;;
- --force-build)
- OPTION_FORCE_BUILD=yes
- ;;
- --verbose)
- VERBOSE=yes
- ;;
- *)
- echo "unknown option '$opt', use --help"
- exit 1
- esac
+ ;;
+ *)
+ echo "unknown option '$opt', use --help"
+ exit 1
+ esac
done
if [ $OPTION_HELP = "yes" ] ; then
echo "Rebuild the prebuilt binaries for the Android NDK toolchain."
+ echo "This script will automatically download the sources from the"
+ echo "Internet, unless you use the --package=<file> option to specify"
+ echo "the exact source package to use."
echo ""
- echo "options:"
+ echo "See build/tools/download-toolchain-sources.sh for a tool that"
+ echo "can create a compatible source package from the current"
+ echo "git repositories."
echo ""
- echo " --help print this message"
- echo " --toolchain=<name> toolchain name (default is $TOOLCHAIN_NAME)"
- echo " --platform=<name> generate toolchain from platform <name> (default is $PLATFORM)"
- echo " --abi=<name> generate toolchain from abi <name> (default is $ABI)"
- echo " --build-out=<path> set Android build out directory"
- echo " --force-download force a download and unpacking of the toolchain sources"
- echo " --force-build force a rebuild of the sources"
+ echo "options (defaults are within brackets):"
+ echo ""
+ echo " --help print this message"
+ echo " --gcc-version=<version> select GCC version [$GCC_VERSION]"
+ echo " --gdb-version=<version> select GDB version [$GDB_VERSION]"
+ echo " --package=<file> specify download source package"
+ echo " --platform=<name> generate toolchain from platform <name> [$PLATFORM]"
+ echo " --abi=<name> generate toolchain from abi <name> [$ABI]"
+ echo " --release=<name> specify prebuilt release name [$RELEASE]"
+ echo " --build-out=<path> set temporary build out directory [/tmp/<random>]"
+ echo " --force-download force a download and unpacking of the toolchain sources"
+ echo " --force-build force a rebuild of the sources"
echo ""
exit 0
fi
@@ -105,17 +136,60 @@
run ()
{
echo "##### NEW COMMAND"
- echo $@
- $@ 2>&1 | tee $TMPLOG
+ echo "$@"
+ $@ 2>&1
+ }
+ log ()
+ {
+ echo "LOG: $@"
}
else
- echo "To follow build long, please use in another terminal: tail -F $TMPLOG"
+ echo "To follow build, please use in another terminal: tail -F $TMPLOG"
run ()
{
echo "##### NEW COMMAND" >> $TMPLOG
echo "$@" >> $TMPLOG
- $@ 1>$TMPLOG 2>&1
+ $@ >>$TMPLOG 2>&1
}
+ log ()
+ {
+ echo "$@" > /dev/null
+ }
+fi
+
+if [ -n "$OPTION_GCC_VERSION" ] ; then
+ GCC_VERSION="$OPTION_GCC_VERSION"
+ log "Using gcc version $GCC_VERSION"
+else
+ log "Using default gcc version $GCC_VERSION"
+fi
+
+if [ -n "$OPTION_GDB_VERSION" ] ; then
+ GDB_VERSION="$OPTION_GDB_VERSION"
+ log "Using gdb version $GDB_VERSION"
+else
+ log "Using default gdb version $GDB_VERSION"
+fi
+
+if [ -n "$OPTION_RELEASE" ] ; then
+ RELEASE="$RELEASE"
+ log "Using toolchain release name '$RELEASE'"
+else
+ log "Using default toolchain name '$RELEASE'"
+fi
+
+if [ -n "$OPTION_PACKAGE" ] ; then
+ if [ ! -f "$OPTION_PACKAGE" ] ; then
+ echo "Package is not a file: $OPTION_PACKAGE"
+ exit 1
+ fi
+fi
+
+if [ -n "$OPTION_BUILD_OUT" ] ; then
+ BUILD_OUT=$OPTION_BUILD_OUT
+ log "Using specific build out directory: $BUILD_OUT"
+else
+ log "Using default random build out directory: $BUILD_OUT"
fi
ANDROID_NDK_ROOT=`cd $ANDROID_NDK_ROOT && pwd`
@@ -123,23 +197,14 @@
ANDROID_PLATFORMS_ROOT=$ANDROID_NDK_ROOT/build/platforms
# where all generated files will be placed
-OUT=$ANDROID_NDK_ROOT/out/$TOOLCHAIN_NAME
+OUT=$BUILD_OUT
PACKAGE_OUT=$OUT/packages
TIMESTAMP_OUT=$OUT/timestamps
# where the sysroot is located
+ANDROID_TOOLCHAIN_SRC=$OUT/src
ANDROID_SYSROOT=$ANDROID_NDK_ROOT/build/platforms/$PLATFORM/arch-$ABI
-# where the toolchain binaries will be placed
-ANDROID_TOOLCHAIN_OUT=$OUT/toolchain
-ANDROID_TOOLCHAIN_SRC=$ANDROID_TOOLCHAIN_OUT/src
-ANDROID_TOOLCHAIN_BUILD=$ANDROID_TOOLCHAIN_OUT/build
-
-# where the gdbserver binaries will be placed
-ANDROID_GDBSERVER_OUT=$OUT/gdbserver
-ANDROID_GDBSERVER_BUILD=$ANDROID_GDBSERVER_OUT/build
-ANDROID_GDBSERVER_DEST=$ANDROID_SYSROOT/usr/bin
-
# Let's check that we have a working md5sum here
A_MD5=`echo "A" | md5sum | cut -d' ' -f1`
if [ "$A_MD5" != "bf072e9119077b4e76437a93986787ef" ] ; then
@@ -190,11 +255,6 @@
fi
}
-TOOLCHAIN_SRC=$ANDROID_TOOLCHAIN_SRC
-TOOLCHAIN_BUILD=$ANDROID_TOOLCHAIN_BUILD
-TOOLCHAIN_PREFIX=$ANDROID_NDK_ROOT/build/prebuilt/$HOST_TAG/$TOOLCHAIN_NAME
-
-GDBSERVER_BUILD=$ANDROID_GDBSERVER_BUILD
timestamp_check ()
{
@@ -218,8 +278,9 @@
}
# this function will be used to download and verify a toolchain
-# package
-# $1: directory name under build/archive (e.g. 'android-toolchain')
+# package.
+#
+# $1: directory name under build/archive (e.g. 'toolchain')
#
download_package ()
{
@@ -315,10 +376,10 @@
echo "Unpack : $1 sources"
echo " from $SRCPKG"
echo " into $SRCDIR"
- rm -rf $SRCDIR
- mkdir -p $SRCDIR
+ run rm -rf $SRCDIR
+ run mkdir -p $SRCDIR
TARFLAGS=xjf
- if [ $VERBOSE = yes ]; then
+ if [ $VERBOSE2 = yes ]; then
TARFLAGS="v$TARFLAGS"
fi
run tar $TARFLAGS $SRCPKG -C $SRCDIR
@@ -350,8 +411,13 @@
exit 2
fi
-download_package toolchain
-unpack_package toolchain $ANDROID_TOOLCHAIN_SRC
+if [ -n "$OPTION_PACKAGE" ] ; then
+ PKG_toolchain="$OPTION_PACKAGE"
+else
+ download_package toolchain
+fi
+
+unpack_package toolchain $ANDROID_TOOLCHAIN_SRC
# remove all info files from the unpacked toolchain sources
# they create countless little problems during the build
@@ -360,119 +426,206 @@
#
find $ANDROID_TOOLCHAIN_SRC -type f -a -name "*.info" -print0 | xargs -0 rm -f
-# configure the toolchain
-if ! timestamp_check toolchain configure; then
- echo "Configure: toolchain build"
- mkdir -p $TOOLCHAIN_BUILD &&
- cd $TOOLCHAIN_BUILD &&
- export CFLAGS="$HOST_CFLAGS" &&
- export LDFLAGS="$HOST_LDFLAGS" && run \
- $TOOLCHAIN_SRC/configure --target=arm-eabi \
- --disable-nls \
- --prefix=$TOOLCHAIN_PREFIX \
- --with-sysroot=$ANDROID_SYSROOT
- if [ $? != 0 ] ; then
- echo "Error while trying to configure toolchain build. See $TMPLOG"
- exit 1
+# Setup variables to properly build a new toolchain
+# $1: toolchain name, e.g. arm-eabi-4.2.1
+build_toolchain ()
+{
+ TOOLCHAIN_NAME=$1
+
+ # where the toolchain is going to be built
+ TOOLCHAIN_BUILD=$OUT/$TOOLCHAIN_NAME
+
+ # where the gdbserver binaries will be placed
+ GDBSERVER_BUILD=$TOOLCHAIN_BUILD/gdbserver
+
+ TOOLCHAIN_SRC=$ANDROID_TOOLCHAIN_SRC
+ TOOLCHAIN_PREFIX=$OUT/build/prebuilt/$HOST_TAG/$TOOLCHAIN_NAME
+ TOOLCHAIN_LICENSES=$ANDROID_NDK_ROOT/build/tools/toolchain-licenses
+
+ # configure the toolchain
+ if ! timestamp_check $TOOLCHAIN_NAME configure; then
+ echo "Configure: $TOOLCHAIN_NAME toolchain build"
+ # Old versions of the toolchain source packages placed the
+ # configure script at the top-level. Newer ones place it under
+ # the build directory though. Probe the file system to check
+ # this.
+ BUILD_SRCDIR=$TOOLCHAIN_SRC/build
+ if [ ! -d $BUILD_SRCDIR ] ; then
+ BUILD_SRCDIR=$TOOLCHAIN_SRC
+ fi
+ OLD_ABI="$ABI"
+ OLD_CFLAGS="$CFLAGS"
+ OLD_LDFLAGS="$LDFLAGS"
+ mkdir -p $TOOLCHAIN_BUILD &&
+ cd $TOOLCHAIN_BUILD &&
+ export ABI="32" && # needed to build a 32-bit gmp
+ export CFLAGS="$HOST_CFLAGS" &&
+ export LDFLAGS="$HOST_LDFLAGS" && run \
+ $BUILD_SRCDIR/configure --target=arm-eabi \
+ --disable-nls \
+ --prefix=$TOOLCHAIN_PREFIX \
+ --with-sysroot=$ANDROID_SYSROOT \
+ --with-binutils-version=$BINUTILS_VERSION \
+ --with-gcc-version=$GCC_VERSION \
+ --with-gdb-version=$GDB_VERSION
+ if [ $? != 0 ] ; then
+ echo "Error while trying to configure toolchain build. See $TMPLOG"
+ exit 1
+ fi
+ ABI="$OLD_ABI"
+ CFLAGS="$OLD_CFLAGS"
+ LDFLAGS="$OLD_LDFLAGS"
+ timestamp_set $TOOLCHAIN_NAME configure
+ timestamp_force $TOOLCHAIN_NAME build
fi
- timestamp_set toolchain configure
- timestamp_force toolchain build
-fi
-# build the toolchain
-if ! timestamp_check toolchain build ; then
- echo "Building : toolchain [this can take a long time]."
- cd $TOOLCHAIN_BUILD &&
- export CFLAGS="$HOST_CFLAGS" &&
- export LDFLAGS="$HOST_LDFLAGS" &&
- run make -j$JOBS
- if [ $? != 0 ] ; then
- echo "Error while building toolchain. See $TMPLOG"
- exit 1
+ # build the toolchain
+ if ! timestamp_check $TOOLCHAIN_NAME build ; then
+ echo "Building : $TOOLCHAIN_NAME toolchain [this can take a long time]."
+ OLD_CFLAGS="$CFLAGS"
+ OLD_LDFLAGS="$LDFLAGS"
+ OLD_ABI="$ABI"
+ cd $TOOLCHAIN_BUILD &&
+ export CFLAGS="$HOST_CFLAGS" &&
+ export LDFLAGS="$HOST_LDFLAGS" &&
+ export ABI="32" &&
+ run make -j$JOBS
+ if [ $? != 0 ] ; then
+ echo "Error while building toolchain. See $TMPLOG"
+ exit 1
+ fi
+ CFLAGS="$OLD_CFLAGS"
+ LDFLAGS="$OLD_LDFLAGS"
+ ABI="$OLD_ABI"
+ timestamp_set $TOOLCHAIN_NAME build
+ timestamp_force $TOOLCHAIN_NAME install
fi
- timestamp_set toolchain build
- timestamp_force toolchain install
-fi
-# install the toolchain to its final location
-if ! timestamp_check toolchain install ; then
- echo "Install : toolchain binaries."
- cd $TOOLCHAIN_BUILD &&
- run make install
- if [ $? != 0 ] ; then
- echo "Error while installing toolchain. See $TMPLOG"
- exit 1
+ # install the toolchain to its final location
+ if ! timestamp_check $TOOLCHAIN_NAME install ; then
+ echo "Install : $TOOLCHAIN_NAME toolchain binaries."
+ cd $TOOLCHAIN_BUILD &&
+ run make install
+ if [ $? != 0 ] ; then
+ echo "Error while installing toolchain. See $TMPLOG"
+ exit 1
+ fi
+ # don't forget to copy the GPL and LGPL license files
+ cp -f $TOOLCHAIN_LICENSES/COPYING $TOOLCHAIN_LICENSES/COPYING.LIB $TOOLCHAIN_PREFIX
+ # remove some unneeded files
+ rm -f $TOOLCHAIN_PREFIX/bin/*-gccbug
+ rm -rf $TOOLCHAIN_PREFIX/man $TOOLCHAIN_PREFIX/info
+ # strip binaries to reduce final package size
+ strip $TOOLCHAIN_PREFIX/bin/*
+ strip $TOOLCHAIN_PREFIX/arm-eabi/bin/*
+ strip $TOOLCHAIN_PREFIX/libexec/gcc/*/*/cc1
+ strip $TOOLCHAIN_PREFIX/libexec/gcc/*/*/cc1plus
+ strip $TOOLCHAIN_PREFIX/libexec/gcc/*/*/collect2
+ timestamp_set $TOOLCHAIN_NAME install
+ timestamp_force $TOOLCHAIN_NAME-gdbserver configure
fi
- # don't forget to copy the GPL and LGPL license files
- cp -f $TOOLCHAIN_SRC/COPYING $TOOLCHAIN_SRC/COPYING.LIB $TOOLCHAIN_PREFIX
- # remove some unneeded files
- rm -f $TOOLCHAIN_PREFIX/bin/*-gccbug
- rm -rf $TOOLCHAIN_PREFIX/man $TOOLCHAIN_PREFIX/info
- # strip binaries to reduce final package size
- strip $TOOLCHAIN_PREFIX/bin/*
- strip $TOOLCHAIN_PREFIX/arm-eabi/bin/*
- strip $TOOLCHAIN_PREFIX/libexec/gcc/*/*/cc1
- strip $TOOLCHAIN_PREFIX/libexec/gcc/*/*/cc1plus
- strip $TOOLCHAIN_PREFIX/libexec/gcc/*/*/collect2
- timestamp_set toolchain install
- timestamp_force gdbserver configure
-fi
-# configure the gdbserver build now
-if ! timestamp_check gdbserver configure; then
- echo "Configure: gdbserver build."
- mkdir -p $GDBSERVER_BUILD
- cd $GDBSERVER_BUILD &&
- CFLAGS="-g -O2 -static -mandroid -I$ANDROID_SYSROOT/usr/include" \
- LDFLAGS= \
- CC="$TOOLCHAIN_PREFIX/bin/arm-eabi-gcc" \
- run $TOOLCHAIN_SRC/gdb-6.6/gdb/gdbserver/configure \
- --host=arm-eabi-linux \
- --with-sysroot=$ANDROID_SYSROOT
- if [ $? != 0 ] ; then
- echo "Could not configure gdbserver build. See $TMPLOG"
- exit 1
+ # configure the gdbserver build now
+ if ! timestamp_check $TOOLCHAIN_NAME-gdbserver configure; then
+ echo "Configure: $TOOLCHAIN_NAME gdbserver build."
+ # Old toolchain source packages placed the gdb sources at
+ # the top-level, while newer ones place them under the 'gdb'
+ # directory. Probe the filesystem to check which one is appropriate.
+ GDB_SRCDIR=$TOOLCHAIN_SRC/gdb/gdb-$GDB_VERSION
+ if [ ! -d $GDB_SRCDIR ] ; then
+ GDB_SRCDIR=$TOOLCHAIN_SRC/gdb-$GDB_VERSION
+ fi
+ mkdir -p $GDBSERVER_BUILD
+ OLD_CC="$CC"
+ OLD_CFLAGS="$CFLAGS"
+ OLD_LDFLAGS="$LDFLAGS"
+ cd $GDBSERVER_BUILD &&
+ export CC="$TOOLCHAIN_PREFIX/bin/arm-eabi-gcc" &&
+ export CFLAGS="-g -O2 -static -mandroid" &&
+ export LDFLAGS= &&
+ run $GDB_SRCDIR/gdb/gdbserver/configure \
+ --host=arm-eabi-linux \
+ --with-sysroot=$ANDROID_SYSROOT
+ if [ $? != 0 ] ; then
+ echo "Could not configure gdbserver build. See $TMPLOG"
+ exit 1
+ fi
+ CC="$OLD_CC"
+ CFLAGS="$OLD_CFLAGS"
+ LDFLAGS="$OLD_LDFLAGS"
+ timestamp_set $TOOLCHAIN_NAME-gdbserver configure
+ timestamp_force $TOOLCHAIN_NAME-gdbserver build
fi
- timestamp_set gdbserver configure
- timestamp_force gdbserver build
-fi
-# build gdbserver
-if ! timestamp_check gdbserver build; then
- echo "Building : gdbserver."
- cd $GDBSERVER_BUILD &&
- run make -j$JOBS
- if [ $? != 0 ] ; then
- echo "Could not build gdbserver. See $TMPLOG"
- exit 1
+ # build gdbserver
+ if ! timestamp_check $TOOLCHAIN_NAME-gdbserver build; then
+ echo "Building : $TOOLCHAIN_NAME gdbserver."
+ cd $GDBSERVER_BUILD &&
+ run make -j$JOBS
+ if [ $? != 0 ] ; then
+ echo "Could not build $TOOLCHAIN_NAME gdbserver. See $TMPLOG"
+ exit 1
+ fi
+ timestamp_set $TOOLCHAIN_NAME-gdbserver build
+ timestamp_force $TOOLCHAIN_NAME-gdbserver install
fi
- timestamp_set gdbserver build
- timestamp_force gdbserver install
-fi
-# install gdbserver
+ # install gdbserver
+ #
+ # note that we install it in the toolchain bin directory
+ # not in $SYSROOT/usr/bin
+ #
+ if ! timestamp_check $TOOLCHAIN_NAME-gdbserver install; then
+ echo "Install : $TOOLCHAIN_NAME gdbserver."
+ DEST=$TOOLCHAIN_PREFIX/bin
+ mkdir -p $DEST &&
+ $TOOLCHAIN_PREFIX/bin/arm-eabi-strip $GDBSERVER_BUILD/gdbserver &&
+ run cp -f $GDBSERVER_BUILD/gdbserver $DEST/gdbserver
+ if [ $? != 0 ] ; then
+ echo "Could not install gdbserver. See $TMPLOG"
+ exit 1
+ fi
+ timestamp_set $TOOLCHAIN_NAME-gdbserver install
+ timestamp_force package toolchain
+ fi
+}
+
+# Look at the toolchains available from the source package
#
-# note that we install it in the toolchain bin directory
-# not in $SYSROOT/usr/bin
+# The old source tarball only contained gcc 4.2.1, the new
+# ones contain multiple toolchains
#
-if ! timestamp_check gdbserver install; then
- echo "Install : gdbserver."
- DEST=$TOOLCHAIN_PREFIX/bin
- mkdir -p $DEST &&
- $TOOLCHAIN_PREFIX/bin/arm-eabi-strip $GDBSERVER_BUILD/gdbserver &&
- run cp -f $GDBSERVER_BUILD/gdbserver $DEST/gdbserver
- if [ $? != 0 ] ; then
- echo "Could not install gdbserver. See $TMPLOG"
- exit 1
- fi
- timestamp_set gdbserver install
- timestamp_force package toolchain
+if [ -d $ANDROID_TOOLCHAIN_SRC/gcc-4.2.1 ] ; then
+ # An old toolchain source package
+ ANDROID_TOOLCHAIN_LIST=arm-eabi-4.2.1
+else
+ ANDROID_TOOLCHAIN_LIST="arm-eabi-4.2.1 arm-eabi-4.4.0"
fi
+for _toolchain in $ANDROID_TOOLCHAIN_LIST; do
+ if timestamp_check toolchain build; then
+ timestamp_force ${_toolchain} configure
+ timestamp_force ${_toolchain}-gdbserver configure
+ fi
+ # Gcc 4.2.1 needs binutils 2.17
+ if [ ${_toolchain} = arm-eabi-4.2.1 ] ; then
+ GCC_VERSION=4.2.1
+ BINUTILS_VERSION=2.17
+ else
+ GCC_VERSION=4.4.0
+ BINUTILS_VERSION=2.19
+ fi
+ build_toolchain ${_toolchain}
+done
+
# package the toolchain
-TOOLCHAIN_TARBALL=/tmp/prebuilt-$TOOLCHAIN_NAME-$HOST_TAG.tar.bz2
+TOOLCHAIN_TARBALL=/tmp/android-ndk-prebuilt-$RELEASE-$HOST_TAG.tar.bz2
if ! timestamp_check package toolchain; then
+ echo "Cleanup : Removing unuseful stuff"
+ rm -rf $OUT/build/prebuilt/$HOST_TAG/*/share
+ find $OUT/build/prebuilt/$HOST_TAG -name "libiberty.a" | xargs rm -f
+ find $OUT/build/prebuilt/$HOST_TAG -name "libarm-elf-linux-sim.a" | xargs rm -f
echo "Package : $HOST_ARCH toolchain binaries"
echo " into $TOOLCHAIN_TARBALL"
cd $ANDROID_NDK_ROOT &&
@@ -480,15 +633,27 @@
if [ $VERBOSE = yes ] ; then
TARFLAGS="v$TARFLAGS"
fi
- run tar $TARFLAGS $TOOLCHAIN_TARBALL build/prebuilt/$HOST_TAG/$TOOLCHAIN_NAME
+ TOOLCHAIN_SRC_DIRS=
+ for _toolchain in $ANDROID_TOOLCHAIN_LIST; do
+ TOOLCHAIN_SRC_DIRS="$TOOLCHAIN_SRC_DIRS build/prebuilt/$HOST_TAG/${_toolchain}"
+ done
+ run tar $TARFLAGS $TOOLCHAIN_TARBALL -C $OUT $TOOLCHAIN_SRC_DIRS
if [ $? != 0 ] ; then
echo "ERROR: Cannot package prebuilt toolchain binaries. See $TMPLOG"
exit 1
fi
timestamp_set package toolchain
+ echo "prebuilt toolchain is in $TOOLCHAIN_TARBALL"
else
echo "prebuilt toolchain is in $TOOLCHAIN_TARBALL"
fi
+if [ -z "$OPTION_BUILD_OUT" ] ; then
+ echo "Cleaning temporary directory $OUT"
+ rm -rf $OUT
+else
+ echo "Don't forget to clean build directory $OUT"
+fi
+
echo "Done."
rm -f $TMPLOG
diff --git a/ndk/build/tools/download-toolchain-sources.sh b/ndk/build/tools/download-toolchain-sources.sh
new file mode 100755
index 0000000..38baf08
--- /dev/null
+++ b/ndk/build/tools/download-toolchain-sources.sh
@@ -0,0 +1,202 @@
+#!/bin/sh
+#
+# Copyright (C) 2009 The Android Open Source 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.
+#
+# This shell script is used to download the sources of the Android NDK toolchain
+# from the git server at android.git.kernel.org and package them in a nice tarball
+# that can later be used with the 'built-toolchain.sh' script.
+#
+
+# include common function and variable definitions
+. `dirname $0`/../core/ndk-common.sh
+
+OPTION_HELP=no
+OPTION_RELEASE=
+OPTION_GIT=
+OPTION_BRANCH=
+
+# the default release name (use today's date)
+RELEASE=`date +%Y%m%d`
+
+# the default branch to use
+BRANCH=eclair
+
+GITCMD=git
+
+VERBOSE=no
+VERBOSE2=no
+
+for opt do
+ optarg=`expr "x$opt" : 'x[^=]*=\(.*\)'`
+ case "$opt" in
+ --help|-h|-\?) OPTION_HELP=yes
+ ;;
+ --branch=*)
+ OPTION_BRANCH="$optarg"
+ ;;
+ --git=*)
+ OPTION_GIT="$optarg"
+ ;;
+ --verbose)
+ if [ "$VERBOSE" = "yes" ] ; then
+ VERBOSE2=yes
+ else
+ VERBOSE=yes
+ fi
+ ;;
+ --release=*)
+ OPTION_RELEASE=$optarg
+ ;;
+ *)
+ echo "unknown option '$opt', use --help"
+ exit 1
+ esac
+done
+
+if [ $OPTION_HELP = "yes" ] ; then
+ echo "Download the NDK toolchain sources from android.git.kernel.org and package them."
+ echo "You will need to run this script before being able to rebuild the NDK toolchain"
+ echo "binaries from scratch with build/tools/build-toolchain.sh"
+ echo ""
+ echo "options (defaults in brackets):"
+ echo ""
+ echo " --help print this message"
+ echo " --branch=<name> specify release branch [$BRANCH]"
+ echo " --release=<name> specify release name [$RELEASE]"
+ echo " --git=<executable> use this version of the git tool [$GITCMD]"
+ echo " --verbose increase verbosity"
+ echo ""
+ exit 0
+fi
+
+TMPLOG=/tmp/android-ndk-download-toolchain-$$.log
+rm -rf $TMPLOG
+
+if [ $VERBOSE = yes ] ; then
+ run ()
+ {
+ echo "##### NEW COMMAND"
+ echo $@
+ $@ 2>&1 | tee $TMPLOG
+ }
+ log ()
+ {
+ echo "LOG: $@"
+ }
+else
+ echo "To follow download, please use in another terminal: tail -F $TMPLOG"
+ run ()
+ {
+ echo "##### NEW COMMAND" >> $TMPLOG
+ echo "$@" >> $TMPLOG
+ $@ 1>$TMPLOG 2>&1
+ }
+ log ()
+ {
+ echo "$@" > /dev/null
+ }
+fi
+
+if [ -n "$OPTION_RELEASE" ] ; then
+ RELEASE="$OPTION_RELEASE"
+ log "Using release name $RELEASE"
+else
+ log "Using default release name $RELEASE"
+fi
+
+# Check that 'git' works
+if [ -n "$OPTION_GIT" ] ; then
+ GITCMD="$OPTION_GIT"
+ log "Using git tool command: '$GITCMD'"
+else
+ log "Using default git tool command."
+fi
+$GITCMD --version > /dev/null 2>&1
+if [ $? != 0 ] ; then
+ echo "The git tool doesn't seem to work. Please check $GITCMD"
+ exit 1
+fi
+log "Git seems to work ok."
+
+if [ -n "$OPTION_BRANCH" ] ; then
+ BRANCH="$OPTION_BRANCH"
+ log "Using branch named $BRANCH"
+else
+ log "Using default branch name $BRANCH"
+fi
+
+# Create temp directory where everything will be copied
+#
+PKGNAME=android-ndk-toolchain-$RELEASE
+TMPDIR=/tmp/$PKGNAME
+log "Creating temporary directory $TMPDIR"
+rm -rf $TMPDIR && mkdir $TMPDIR
+if [ $? != 0 ] ; then
+ echo "Could not create temporary directory: $TMPDIR"
+fi
+
+# prefix used for all clone operations
+GITPREFIX=git://android.git.kernel.org/toolchain
+
+toolchain_clone ()
+{
+ echo "downloading sources for toolchain/$1"
+ log "cloning $GITPREFIX/$1.git"
+ run git clone $GITPREFIX/$1.git $1
+ if [ $? != 0 ] ; then
+ echo "Could not clone $GITPREFIX/$1.git ?"
+ exit 1
+ fi
+ log "checking out $BRANCH branch of $1.git"
+ cd $1
+ run git checkout -b $BRANCH origin/$BRANCH
+ if [ $? != 0 ] ; then
+ echo "Could not checkout $1 ?"
+ exit 1
+ fi
+ # get rid of .git directory, we won't need it.
+ cd ..
+ log "getting rid of .git directory for $1."
+ run rm -rf $1/.git
+}
+
+
+cd $TMPDIR
+toolchain_clone binutils
+toolchain_clone build
+toolchain_clone gcc
+toolchain_clone gdb
+toolchain_clone gmp
+#toolchain_clone gold # not sure about this one !
+toolchain_clone mpfr
+
+# We only keep one version of gcc and binutils
+
+# we clearly don't need this
+log "getting rid of obsolete gcc 4.3.1 sources"
+rm -rf $TMPDIR/gcc/gcc-4.3.1
+
+# create the package
+PACKAGE=/tmp/$PKGNAME.tar.bz2
+echo "Creating package archive $PACKAGE"
+cd `dirname $TMPDIR`
+run tar cjvf $PACKAGE -C /tmp/$PKGNAME .
+if [ $? != 0 ] ; then
+ echo "Could not package toolchain source archive ?. See $TMPLOG"
+ exit 1
+fi
+
+echo "Toolchain sources downloaded and packaged succesfully at $PACKAGE"
+rm -f $TMPLOG
diff --git a/ndk/build/tools/toolchain-licenses/COPYING b/ndk/build/tools/toolchain-licenses/COPYING
new file mode 100644
index 0000000..623b625
--- /dev/null
+++ b/ndk/build/tools/toolchain-licenses/COPYING
@@ -0,0 +1,340 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/ndk/build/tools/toolchain-licenses/COPYING.LIB b/ndk/build/tools/toolchain-licenses/COPYING.LIB
new file mode 100644
index 0000000..2d2d780
--- /dev/null
+++ b/ndk/build/tools/toolchain-licenses/COPYING.LIB
@@ -0,0 +1,510 @@
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations
+below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it
+becomes a de-facto standard. To achieve this, non-free programs must
+be allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control
+compilation and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at least
+ three years, to give the same user the materials specified in
+ Subsection 6a, above, for a charge no more than the cost of
+ performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply, and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License
+may add an explicit geographical distribution limitation excluding those
+countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Libraries
+
+ If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change. You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms
+of the ordinary General Public License).
+
+ To apply these terms, attach the following notices to the library.
+It is safest to attach them to the start of each source file to most
+effectively convey the exclusion of warranty; and each file should
+have at least the "copyright" line and a pointer to where the full
+notice is found.
+
+
+ <one line to give the library's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or
+your school, if any, to sign a "copyright disclaimer" for the library,
+if necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the
+ library `Frob' (a library for tweaking knobs) written by James
+ Random Hacker.
+
+ <signature of Ty Coon>, 1 April 1990
+ Ty Coon, President of Vice
+
+That's all there is to it!
+
+
diff --git a/ndk/docs/ANDROID-MK.TXT b/ndk/docs/ANDROID-MK.TXT
index babcd95..622806a 100644
--- a/ndk/docs/ANDROID-MK.TXT
+++ b/ndk/docs/ANDROID-MK.TXT
@@ -209,14 +209,25 @@
TARGET_PLATFORM
Name of the target Android platform when this Android.mk is parsed.
- For now, only 'android-3' is supported, which corresponds to the
- Android 1.5 platform.
+ For example, 'android-3' correspond to Android 1.5 system images. For
+ a complete list of platform names and corresponding Android system
+ images, read docs/STABLE-APIS.TXT.
TARGET_ARCH_ABI
Name of the target CPU+ABI when this Android.mk is parsed.
- For now, only 'arm' is supported, which really means the following:
+ Two values are supported at the moment:
- ARMv5TE or higher CPU, with 'softfloat' floating point support
+ armeabi
+ For Armv5TE
+
+ armeabi-v7a
+
+ NOTE: Up to Android NDK 1.6_r1, this variable was simply defined
+ as 'arm'. However, the value has been redefined to better
+ match what is used internally by the Android platform.
+
+ For more details about architecture ABIs and corresponding
+ compatibility issues, please read docs/CPU-ARCH-ABIS.TXT
Other target ABIs will be introduced in future releases of the NDK
and will have a different name. Note that all ARM-based ABIs will
@@ -228,8 +239,9 @@
as $(TARGET_PLATFORM)-$(TARGET_ARCH_ABI) and is useful when you want
to test against a specific target system image for a real device.
- By default, this will be 'android-3-arm'
+ By default, this will be 'android-3-armeabi'
+ (Up to Android NDK 1.6_r1, this used to be 'android-3-arm' by default)
NDK-provided function macros:
- - - - - - - - - - - - - - -
diff --git a/ndk/docs/APPLICATION-MK.TXT b/ndk/docs/APPLICATION-MK.TXT
index b790ac6..0a11cca 100644
--- a/ndk/docs/APPLICATION-MK.TXT
+++ b/ndk/docs/APPLICATION-MK.TXT
@@ -114,6 +114,25 @@
to point to an alternate build script. A non-absolute path will always
be interpreated as relative to the NDK's top-level directory.
+APP_ABI
+ By default, the NDK build system will generate machine code for the
+ 'armeabi' ABI. This corresponds to an ARMv5TE based CPU with software
+ floating point operations. You can use APP_ABI to select a different
+ ABI.
+
+ For example, to support hardware FPU instructions on ARMv7 based devices,
+ use:
+
+ APP_ABI := armeabi-v7a
+
+ Or to support both ARMv5TE and ARMv7 based devices, use:
+
+ APP_ABI := armeabi armeabi-v7a
+
+ For the list of all supported ABIs and details about their usage / limitations
+ please read docs/CPU-ARCH-ABIS.TXT
+
+
A trivial Application.mk file would be:
-------------- cut here -------------------------
diff --git a/ndk/docs/CHANGES.TXT b/ndk/docs/CHANGES.TXT
index 4862be6..656b1b4 100644
--- a/ndk/docs/CHANGES.TXT
+++ b/ndk/docs/CHANGES.TXT
@@ -7,13 +7,60 @@
- Fix build/host-setup.sh to execute as a Bourne shell script (again)
-- Make target shared libraries portable to systems that don't use the exact same
- toolchain (GCC 4.2.1) .
+- Make target shared libraries portable to systems that don't use the exact
+ same toolchain. This is needed due to differences in libgcc.a implementations
+ between gcc 4.2.1 and 4.4.0. This change ensures that generated machine
+ code doesn't depend on helper functions provided by the Android platform
+ runtime.
-- Actually use the awk version detected by host-setup.sh during the build.
+
+IMPORTANT CHANGES:
+
+- Support for hardware FPU. This is through the new 'armeabi-v7a' ABI
+ corresponding to ARMv7-a class devices.
+
+ Note that by default, the NDK will still generate machine code for the old
+ 'armeabi' ABI (ARMv5TE based) which is supported by all official Android
+ system images to date.
+
+ You will need to define APP_ABI in your Application.mk file to change this.
+ See docs/APPLICATION-MK.TXT
+
+ More details about ABIs is now available in docs/CPU-ARCH-ABIS.TXT
+
+- GCC 4.4.0 is now used by default by the NDK. It generates better code than
+ GCC 4.2.1, which was used in previous releases. However, the compiler's C++
+ frontend is also a lot more pedantic regarding certain template constructs
+ and will even refuse to build some of them.
+
+ For this reason, the NDK also comes with GCC 4.2.1 prebuilt binaries, and
+ you can force its usage by defining NDK_TOOLCHAIN in your environment to
+ the value 'arm-eabi-4.2.1'. For example:
+
+ export NDK_TOOLCHAIN=arm-eabi-4.2.1
+ make APP=hello-jni
+
+ Note that only the 'armeabi' ABI is supported by the 4.2.1 toolchain. We
+ recommend switching to 4.2.1 *only* if you encounter compilation problems
+ with 4.4.0.
+
+ The 4.2.1 prebuilt binaries will probably be removed from a future release
+ of the Android NDK, we thus *strongly* invite you to fix your code if such
+ problems happen.
+
+- Support for OpenGL ES 2.0. This is through the new 'android-5' platform to
+ reflect Android 2.0 (previously the Eclair branch). This is merely a copy
+ of android-4 that also includes headers and libraries for OpenGL ES 2.0.
+
+ See the sample named "hello-gl2" for a *very* basic demonstration. Note that
+ OpenGL ES 2.0 is currently *not* available from Java, and must be used
+ through native code exclusively.
+
OTHER FIXES & CHANGES:
+- Actually use the awk version detected by host-setup.sh during the build.
+
- Added --prebuilt-ndk=FILE option to build/tools/make-release.sh script to
package a new experimental NDK package archive from the current source tree
plus the toolchain binaries of an existing NDK release package. E.g.:
@@ -33,6 +80,31 @@
This change is to help people easily package experimental NDK releases to
test and distribute fixes and improvements.
+- Remove bash-isms from build/tools/build-toolchain.sh. Now it's possible to
+ build it with the 'dash' shell on Debian-based systems (tested on Ubuntu 8.04)
+
+- Remove bash-ism from build/tools/build-ndk-sysroot.sh
+
+- Refresh C library headers for all platforms:
+
+ - make <endian.h> simply include <sys/endian.h>
+ - make <stdint.h> properly declare 64-bit integer types with a C99 compiler
+ - add missing <sys/types.h> to <strings.h>
+ - add GLibc-compatible macro aliases (st_atimensec, st_mtimensec and
+ st_ctimensec) to <stat.h>
+ - add missing declaration for tzset() in <time.h>
+
+- Added build/tools/download-toolchain-sources.sh, a script that allows you
+ to download the toolchain sources from the official open-source repository
+ at android.git.kernel.org and nicely package them into a tarball that can
+ later be used by build/tools/build-toolchain.sh to rebuild the prebuilt
+ binaries for your system.
+
+- Updated build/tools/build-toolchain.sh to support the tarballs generated
+ by download-toolchain-sources.sh with the --package=<file> option. This
+ also builds both gcc 4.2.1 and 4.4.0, adding support for armeabi-v7a to
+ gcc 4.4.0.
+
-------------------------------------------------------------------------------
android-ndk-1.6_r1
diff --git a/ndk/docs/CPU-ARCH-ABIS.TXT b/ndk/docs/CPU-ARCH-ABIS.TXT
new file mode 100644
index 0000000..d142db4
--- /dev/null
+++ b/ndk/docs/CPU-ARCH-ABIS.TXT
@@ -0,0 +1,225 @@
+Android Native CPU ABI Management
+
+
+Introduction:
+=============
+
+Every piece of native code generated with the Android NDK matches a given
+"Application Binary Interface" (ABI) that defines exactly how your
+application's machine code is expected to interact with the system at
+runtime.
+
+A typical ABI describes things in *excruciating* details, and will typically
+include the following information:
+
+ - the CPU instruction set that the machine code should use
+
+ - the endianess of memory stores and loads at runtime
+
+ - the format of executable binaries (shared libraries, programs, etc...)
+ and what type of content is allowed/supported in them.
+
+ - various conventions used to pass data between your code and
+ the system (e.g. how registers and/or the stack are used when functions
+ are called, alignment constraints, etc...)
+
+ - alignment and size constraints for enum types, structure fields and
+ arrays.
+
+ - the list of function symbols available to your machine code at runtime,
+ generally from a very specific selected set of libraries.
+
+This document lists the exact ABIs supported by the Android NDK and the
+official Android platform releases.
+
+
+I. Supported ABIs:
+==================
+
+Each supported ABI is identified by a unique name.
+
+
+ I.1. 'armeabi'
+ --------------
+
+ This is the name of an ABI for ARM-based CPUs that support *at* *least*
+ the ARMv5TE instruction set. Please refer to following documentation for
+ more details:
+
+ - ARM Architecture Reference manual (a.k.a ARMARM)
+ - Procedure Call Standard for the ARM Architecture (a.k.a. AAPCS)
+ - ELF for the ARM Architecture (a.k.a. ARMELF)
+ - ABI for the ARM Architecture (a.k.a. BSABI)
+ - Base Platform ABI for the ARM Architecture (a.k.a. BPABI)
+ - C Library ABI for the ARM Architecture (a.k.a. CLIABI)
+ - C++ ABI for the ARM Architecture (a.k.a. CPPABI)
+ - Runtime ABI for the ARM Architecture (a.k.a. RTABI)
+
+ - ELF System V Application Binary Interface
+ (DRAFT - 24 April 2001)
+
+ - Generic C++ ABI (http://www.codesourcery.com/public/cxx-abi/abi.html)
+
+ Note that the AAPCS standard defines 'EABI' as a moniker used to specify
+ a _family_ of similar but distinct ABIs. Android follows the little-endian
+ ARM GNU/Linux ABI as documented in the following document:
+
+ http://www.codesourcery.com/gnu_toolchains/arm/arm_gnu_linux_abi.pdf
+
+ With the exception that wchar_t is only one byte. This should not matter
+ in practice since wchar_t is simply *not* really supported by the Android
+ platform anyway.
+
+ This ABI does *not* support hardware-assisted floating point computations.
+ Instead, all FP operations are performed through software helper functions
+ that come from the compiler's libgcc.a static library.
+
+ Thumb (a.k.a. Thumb-1) instructions are supported. Note that the NDK
+ will generate thumb code by default, unless you define LOCAL_ARM_MODE
+ in your Android.mk (see docs/ANDROID-MK.TXT for all details).
+
+
+ I.2. 'armeabi-v7a'
+ ------------------
+
+ This is the name of another ARM-based CPU ABI that *extends* 'armeabi' to
+ include a few CPU instruction set extensions as described in the following
+ document:
+
+ - ARM Architecture v7-a Reference Manual
+
+ The instruction extensions supported by this Android-specific ABI are:
+
+ - The Thumb-2 instruction set extension.
+ - The VFP hardware FPU instructions.
+
+ More specifically, VFPv3-D32 is being used, which corresponds to 32
+ dedicated 64-bit floating point registers provided by the CPU.
+
+ Other extensions described by the v7-a ARM like Advanced SIMD (a.k.a. NEON)
+ or ThumbEE are optional to this ABI, which means that developers should
+ check *at* *runtime* whether the extensions are available and provide
+ alternative code paths if this is not the case.
+
+ (Just like one typically does on x86 systems to check/use MMX/SSE2/etc...
+ specialized instructions).
+
+ IMPORTANT NOTE: This ABI enforces that all double values are passed during
+ function calls in 'core' register pairs, instead of dedicated FP ones.
+ However, all internal computations can be performed with the FP registers
+ and will be greatly sped up.
+
+ This little constraint, while resulting in a slight decrease of
+ performance, ensures binary compatibility with all existing 'armeabi'
+ binaries.
+
+ IMPORTANT NOTE: The 'armeabi-v7a' machine code will *not* run on ARMv5 or
+ ARMv6 based devices.
+
+
+II. Generating code for a specific ABI:
+=======================================
+
+By default, the NDK will generate machine code for the 'armeabi' ABI.
+You can however add the following line to your Application.mk to generate
+ARMv7-a compatible machine code instead:
+
+ APP_ABI := armeabi-v7a
+
+It is also possible to build machine code for *two* distinct ABIs by using:
+
+ APP_ABI := armeabi armeabi-v7a
+
+This will instruct the NDK to build two versions of your machine code: one for
+each ABI listed on this line. Both libraries will be copied to your application
+project path and will be ultimately packaged into your .apk.
+
+Such a package is called a "fat binary" in Android speak since it contains
+machine code for more than one CPU architecture. At installation time, the
+package manager will only unpack the most appropriate machine code for the
+target device. See below for details.
+
+
+
+III. ABI Management on the Android platform:
+============================================
+
+This section provides specific details about how the Android platform manages
+native code in application packages.
+
+
+ III.1. Native code in Application Packages:
+ -------------------------------------------
+
+ It is expected that shared libraries generated with the NDK are stored in
+ the final application package (.apk) at locations of the form:
+
+ lib/<abi>/lib<name>.so
+
+ Where <abi> is one of the ABI names listed in section II above, and <name>
+ is a name that can be used when loading the shared library from the VM
+ as in:
+
+ System.loadLibrary("<name>");
+
+ Since .apk files are just zip files, you can trivially list their content
+ with a command like:
+
+ unzip -l <apk>
+
+ to verify that the native shared libraries you want are indeed at the
+ proper location. You can also place native shared libraries at other
+ locations within the .apk, but they will be ignored by the system, or more
+ precisely by the steps described below; you will need to extract/install
+ them manually in your application.
+
+ In the case of a "fat" binary, two distinct libraries are thus placed in
+ the .apk, for example at:
+
+ lib/armeabi/libfoo.so
+ lib/armeabi-v7a/libfoo.so
+
+
+ III.2. Android Platform ABI support:
+ ------------------------------------
+
+ The Android system knows at runtime which ABI(s) it supports. More
+ precisely, up to two build-specific system properties are used to
+ indicate:
+
+ - the 'primary' ABI for the device, corresponding to the machine
+ code used in the system image itself.
+
+ - an optional 'secondary' ABI, corresponding to another ABI that
+ is also supported by the system image.
+
+ For example, a typical ARMv5TE-based device would only define
+ the primary ABI as 'armeabi' and not define a secondary one.
+
+ On the other hand, a typical ARMv7-based device would define the
+ primary ABI to 'armeabi-v7a' and the secondary one to 'armeabi'
+ since it can run application native binaries generated for both
+ of them.
+
+
+ III.3. Automatic extraction of native code at install time:
+ -----------------------------------------------------------
+
+ When installing an application, the package manager service will scan
+ the .apk and look for any shared library of the form:
+
+ lib/<primary-abi>/lib<name>.so
+
+ If one is found, then it is copied under $APPDIR/lib/lib<name>.so,
+ where $APPDIR corresponds to the application's specific data directory.
+
+ If none is found, and a secondary ABI is defined, the service will
+ then scan for shared libraries of the form:
+
+ lib/<secondary-abi>/lib<name>.so
+
+ If anything is found, then it is copied under $APPDIR/lib/lib<name>.so
+
+ This mechanism ensures that the best machine code for the target
+ device is automatically extracted from the package at installation
+ time.
diff --git a/ndk/docs/STABLE-APIS.TXT b/ndk/docs/STABLE-APIS.TXT
index b78bf83..700bb88 100644
--- a/ndk/docs/STABLE-APIS.TXT
+++ b/ndk/docs/STABLE-APIS.TXT
@@ -26,7 +26,8 @@
currently supported:
android-3 -> Official Android 1.5 system images
- android-4 -> Experimental Donut system images
+ android-4 -> Official Android 1.6 system images
+ android-5 -> Official Android 2.0 system images
II. Android-3 Stable Native APIs:
---------------------------------
@@ -122,8 +123,7 @@
----------------------------------
All the APIs listed below are available for developing native code that runs
-on the Donut experimental branch, which will be used to make the next official
-platform system images.
+on Android 1.6 system images and above,
The OpenGL ES 1.x Library:
@@ -151,3 +151,35 @@
it, see:
http://jet.ro/visuals/san-angeles-observation/
+
+
+IV. Android-5 Stable Native APIs:
+----------------------------------
+
+All the APIs listed below are available for developing native code that runs
+on the Eclair experimental branch, which will be used to make the next official
+platform system images.
+
+
+The OpenGL ES 2.0 Library:
+--------------------------
+
+The standard OpenGL ES 2.0 headers <GLES2/gl2.h> and <GLES2/gl2ext.h> contain the
+declarations needed to perform OpenGL ES 2.0 rendering calls from native code.
+This includes the ability to define and use vertex and fragment shaders using the
+GLSL language.
+
+If you use them, your native module should link to /system/lib/libGLESv2.so
+as in:
+
+ LOCAL_LDLIBS := -lGLESv2.so
+
+Please note that, at the moment, native headers and libraries for the EGL APIs
+are *not* available. EGL is used to perform surface creation and flipping
+(instead of rendering). The corresponding operations must be performed in your
+VM application instead, for example with a GLSurfaceView, as described here:
+
+http://android-developers.blogspot.com/2009/04/introducing-glsurfaceview.html
+
+The "hello-gl2" sample application demonstrate this. It is used to draw a very
+simple triangle with the help of a vertex and fragment shaders.
diff --git a/samples/BusinessCard/Android.mk b/samples/BusinessCard/Android.mk
new file mode 100644
index 0000000..627cac1
--- /dev/null
+++ b/samples/BusinessCard/Android.mk
@@ -0,0 +1,13 @@
+LOCAL_PATH:= $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE_TAGS := samples
+
+# Only compile source java files in this apk.
+LOCAL_SRC_FILES := $(call all-java-files-under, src)
+
+LOCAL_PACKAGE_NAME := BusinessCard
+
+LOCAL_SDK_VERSION := current
+
+include $(BUILD_PACKAGE)
diff --git a/samples/BusinessCard/AndroidManifest.xml b/samples/BusinessCard/AndroidManifest.xml
new file mode 100644
index 0000000..186e249
--- /dev/null
+++ b/samples/BusinessCard/AndroidManifest.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source 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.
+-->
+
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="com.example.android.businesscard">
+
+ <!-- IMPORTANT! We want this app to run on Cupcake, Donut, Eclair and beyond -->
+ <uses-sdk android:minSdkVersion="3"/>
+
+ <uses-permission android:name="android.permission.READ_CONTACTS" />
+
+ <application android:label="@string/businesscard_app">
+ <activity android:name="BusinessCardActivity">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.LAUNCHER" />
+ </intent-filter>
+ </activity>
+ </application>
+</manifest>
diff --git a/samples/BusinessCard/res/layout/business_card.xml b/samples/BusinessCard/res/layout/business_card.xml
new file mode 100644
index 0000000..c7ce713
--- /dev/null
+++ b/samples/BusinessCard/res/layout/business_card.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+ <Button
+ android:id="@+id/pick_contact_button"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_alignParentTop="true"
+ android:layout_margin="10dip"
+ android:text="@string/button_pick_contact"/>
+ <TextView
+ android:id="@+id/display_name_text_view"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerInParent="true"
+ android:textAppearance="?android:attr/textAppearanceLarge"/>
+ <TextView
+ android:id="@+id/phone_number_text_view"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/display_name_text_view"
+ android:layout_centerHorizontal="true"
+ android:textAppearance="?android:attr/textAppearanceMedium"/>
+</RelativeLayout>
+
diff --git a/samples/BusinessCard/res/values/strings.xml b/samples/BusinessCard/res/values/strings.xml
new file mode 100644
index 0000000..8668d57
--- /dev/null
+++ b/samples/BusinessCard/res/values/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source 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.
+-->
+
+<!-- This file contains resource definitions for displayed strings, allowing
+ them to be changed based on the locale and options. -->
+
+<resources>
+ <string name="businesscard_app">Business Card</string>
+ <string name="button_pick_contact">Pick Contact</string>
+</resources>
+
diff --git a/samples/BusinessCard/src/com/example/android/businesscard/BusinessCardActivity.java b/samples/BusinessCard/src/com/example/android/businesscard/BusinessCardActivity.java
new file mode 100644
index 0000000..d8d277e
--- /dev/null
+++ b/samples/BusinessCard/src/com/example/android/businesscard/BusinessCardActivity.java
@@ -0,0 +1,125 @@
+/*
+ * Copyright (C) 2009 The Android Open Source 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.
+ */
+
+package com.example.android.businesscard;
+
+import android.app.Activity;
+import android.content.Intent;
+import android.net.Uri;
+import android.os.AsyncTask;
+import android.os.Bundle;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.widget.Button;
+import android.widget.TextView;
+
+/**
+ * A simple activity that shows a "Pick Contact" button and two fields: contact's name
+ * and phone number. The user taps on the Pick Contact button to bring up
+ * the contact chooser. Once this activity receives the result from contact picker,
+ * it launches an asynchronous query (queries should always be asynchronous) to load
+ * contact's name and phone number. When the query completes, the activity displays
+ * the loaded data.
+ */
+public class BusinessCardActivity extends Activity {
+
+ // Request code for the contact picker activity
+ private static final int PICK_CONTACT_REQUEST = 1;
+
+ /**
+ * An SDK-specific instance of {@link ContactAccessor}. The activity does not need
+ * to know what SDK it is running in: all idiosyncrasies of different SDKs are
+ * encapsulated in the implementations of the ContactAccessor class.
+ */
+ private final ContactAccessor mContactAccessor = ContactAccessor.getInstance();
+
+ /**
+ * Called with the activity is first created.
+ */
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ setContentView(R.layout.business_card);
+
+ // Install a click handler on the Pick Contact button
+ Button pickContact = (Button)findViewById(R.id.pick_contact_button);
+ pickContact.setOnClickListener(new OnClickListener() {
+
+ public void onClick(View v) {
+ pickContact();
+ }
+ });
+ }
+
+ /**
+ * Click handler for the Pick Contact button. Invokes a contact picker activity.
+ * The specific intent used to bring up that activity differs between versions
+ * of the SDK, which is why we delegate the creation of the intent to ContactAccessor.
+ */
+ protected void pickContact() {
+ startActivityForResult(mContactAccessor.getPickContactIntent(), PICK_CONTACT_REQUEST);
+ }
+
+ /**
+ * Invoked when the contact picker activity is finished. The {@code contactUri} parameter
+ * will contain a reference to the contact selected by the user. We will treat it as
+ * an opaque URI and allow the SDK-specific ContactAccessor to handle the URI accordingly.
+ */
+ @Override
+ protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+ if (requestCode == PICK_CONTACT_REQUEST && resultCode == RESULT_OK) {
+ loadContactInfo(data.getData());
+ }
+ }
+
+ /**
+ * Load contact information on a background thread.
+ */
+ private void loadContactInfo(Uri contactUri) {
+
+ /*
+ * We should always run database queries on a background thread. The database may be
+ * locked by some process for a long time. If we locked up the UI thread while waiting
+ * for the query to come back, we might get an "Application Not Responding" dialog.
+ */
+ AsyncTask<Uri, Void, ContactInfo> task = new AsyncTask<Uri, Void, ContactInfo>() {
+
+ @Override
+ protected ContactInfo doInBackground(Uri... uris) {
+ return mContactAccessor.loadContact(getContentResolver(), uris[0]);
+ }
+
+ @Override
+ protected void onPostExecute(ContactInfo result) {
+ bindView(result);
+ }
+ };
+
+ task.execute(contactUri);
+ }
+
+ /**
+ * Displays contact information: name and phone number.
+ */
+ protected void bindView(ContactInfo contactInfo) {
+ TextView displayNameView = (TextView) findViewById(R.id.display_name_text_view);
+ displayNameView.setText(contactInfo.getDisplayName());
+
+ TextView phoneNumberView = (TextView) findViewById(R.id.phone_number_text_view);
+ phoneNumberView.setText(contactInfo.getPhoneNumber());
+ }
+}
diff --git a/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessor.java b/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessor.java
new file mode 100644
index 0000000..6a402e9
--- /dev/null
+++ b/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessor.java
@@ -0,0 +1,89 @@
+/*
+ * Copyright (C) 2009 The Android Open Source 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.
+ */
+
+package com.example.android.businesscard;
+
+import android.content.ContentResolver;
+import android.content.Intent;
+import android.net.Uri;
+import android.os.Build;
+
+/**
+ * This abstract class defines SDK-independent API for communication with
+ * Contacts Provider. The actual implementation used by the application depends
+ * on the level of API available on the device. If the API level is Cupcake or
+ * Donut, we want to use the {@link ContactAccessorSdk3_4} class. If it is
+ * Eclair or higher, we want to use {@link ContactAccessorSdk5}.
+ */
+public abstract class ContactAccessor {
+
+ /**
+ * Static singleton instance of {@link ContactAccessor} holding the
+ * SDK-specific implementation of the class.
+ */
+ private static ContactAccessor sInstance;
+
+ public static ContactAccessor getInstance() {
+ if (sInstance == null) {
+ String className;
+
+ /*
+ * Check the version of the SDK we are running on. Choose an
+ * implementation class designed for that version of the SDK.
+ *
+ * Unfortunately we have to use strings to represent the class
+ * names. If we used the conventional ContactAccessorSdk5.class.getName()
+ * syntax, we would get a ClassNotFoundException at runtime on pre-Eclair SDKs.
+ * Using the above syntax would force Dalvik to load the class and try to
+ * resolve references to all other classes it uses. Since the pre-Eclair
+ * does not have those classes, the loading of ContactAccessorSdk5 would fail.
+ */
+ @SuppressWarnings("deprecation")
+ int sdkVersion = Integer.parseInt(Build.VERSION.SDK); // Cupcake style
+ if (sdkVersion < Build.VERSION_CODES.ECLAIR) {
+ className = "com.example.android.businesscard.ContactAccessorSdk3_4";
+ } else {
+ className = "com.example.android.businesscard.ContactAccessorSdk5";
+ }
+
+ /*
+ * Find the required class by name and instantiate it.
+ */
+ try {
+ Class<? extends ContactAccessor> clazz =
+ Class.forName(className).asSubclass(ContactAccessor.class);
+ sInstance = clazz.newInstance();
+ } catch (Exception e) {
+ throw new IllegalStateException(e);
+ }
+ }
+
+ return sInstance;
+ }
+
+ /**
+ * Returns the {@link Intent#ACTION_PICK} intent configured for the right authority: legacy
+ * or current.
+ */
+ public abstract Intent getPickContactIntent();
+
+ /**
+ * Loads contact data for the supplied URI. The actual queries will differ for different APIs
+ * used, but the result is the same: the {@link #mDisplayName} and {@link #mPhoneNumber}
+ * fields are populated with correct data.
+ */
+ public abstract ContactInfo loadContact(ContentResolver contentResolver, Uri contactUri);
+}
diff --git a/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessorSdk3_4.java b/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessorSdk3_4.java
new file mode 100644
index 0000000..7fcd388
--- /dev/null
+++ b/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessorSdk3_4.java
@@ -0,0 +1,81 @@
+/*
+ * Copyright (C) 2009 The Android Open Source 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.
+ */
+
+package com.example.android.businesscard;
+
+import android.content.AsyncQueryHandler;
+import android.content.ContentResolver;
+import android.content.Intent;
+import android.database.Cursor;
+import android.net.Uri;
+import android.provider.Contacts.People;
+import android.provider.Contacts.People.Phones;
+
+/**
+ * An implementation of {@link ContactAccessor} that uses legacy Contacts API.
+ * These APIs are deprecated and should not be used unless we are running on a
+ * pre-Eclair SDK.
+ * <p>
+ * There are several reasons why we wouldn't want to use this class on an Eclair device:
+ * <ul>
+ * <li>It would see at most one account, namely the first Google account created on the device.
+ * <li>It would work through a compatibility layer, which would make it inherently less efficient.
+ * <li>Not relevant to this particular example, but it would not have access to new kinds
+ * of data available through current APIs.
+ * </ul>
+ */
+@SuppressWarnings("deprecation")
+public class ContactAccessorSdk3_4 extends ContactAccessor {
+
+ /**
+ * Returns a Pick Contact intent using the pre-Eclair "people" URI.
+ */
+ @Override
+ public Intent getPickContactIntent() {
+ return new Intent(Intent.ACTION_PICK, People.CONTENT_URI);
+ }
+
+ /**
+ * Retrieves the contact information.
+ */
+ @Override
+ public ContactInfo loadContact(ContentResolver contentResolver, Uri contactUri) {
+ ContactInfo contactInfo = new ContactInfo();
+ Cursor cursor = contentResolver.query(contactUri,
+ new String[]{People.DISPLAY_NAME}, null, null, null);
+ try {
+ if (cursor.moveToFirst()) {
+ contactInfo.setDisplayName(cursor.getString(0));
+ }
+ } finally {
+ cursor.close();
+ }
+
+ Uri phoneUri = Uri.withAppendedPath(contactUri, Phones.CONTENT_DIRECTORY);
+ cursor = contentResolver.query(phoneUri,
+ new String[]{Phones.NUMBER}, null, null, Phones.ISPRIMARY + " DESC");
+
+ try {
+ if (cursor.moveToFirst()) {
+ contactInfo.setPhoneNumber(cursor.getString(0));
+ }
+ } finally {
+ cursor.close();
+ }
+
+ return contactInfo;
+ }
+}
diff --git a/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessorSdk5.java b/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessorSdk5.java
new file mode 100644
index 0000000..6855597
--- /dev/null
+++ b/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessorSdk5.java
@@ -0,0 +1,88 @@
+/*
+ * Copyright (C) 2009 The Android Open Source 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.
+ */
+
+package com.example.android.businesscard;
+
+import android.content.ContentResolver;
+import android.content.Intent;
+import android.database.Cursor;
+import android.net.Uri;
+import android.provider.ContactsContract.Contacts;
+import android.provider.ContactsContract.CommonDataKinds.Phone;
+
+/**
+ * An implementation of {@link ContactAccessor} that uses current Contacts API.
+ * This class should be used on Eclair or beyond, but would not work on any earlier
+ * release of Android. As a matter of fact, it could not even be loaded.
+ * <p>
+ * This implementation has several advantages:
+ * <ul>
+ * <li>It sees contacts from multiple accounts.
+ * <li>It works with aggregated contacts. So for example, if the contact is the result
+ * of aggregation of two raw contacts from different accounts, it may return the name from
+ * one and the phone number from the other.
+ * <li>It is efficient because it uses the more efficient current API.
+ * <li>Not obvious in this particular example, but it has access to new kinds
+ * of data available exclusively through the new APIs. Exercise for the reader: add support
+ * for nickname (see {@link android.provider.ContactsContract.CommonDataKinds.Nickname}) or
+ * social status updates (see {@link android.provider.ContactsContract.StatusUpdates}).
+ * </ul>
+ */
+public class ContactAccessorSdk5 extends ContactAccessor {
+
+ /**
+ * Returns a Pick Contact intent using the Eclair "contacts" URI.
+ */
+ @Override
+ public Intent getPickContactIntent() {
+ return new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
+ }
+
+ /**
+ * Retrieves the contact information.
+ */
+ @Override
+ public ContactInfo loadContact(ContentResolver contentResolver, Uri contactUri) {
+ ContactInfo contactInfo = new ContactInfo();
+ long contactId = -1;
+
+ // Load the display name for the specified person
+ Cursor cursor = contentResolver.query(contactUri,
+ new String[]{Contacts._ID, Contacts.DISPLAY_NAME}, null, null, null);
+ try {
+ if (cursor.moveToFirst()) {
+ contactId = cursor.getLong(0);
+ contactInfo.setDisplayName(cursor.getString(1));
+ }
+ } finally {
+ cursor.close();
+ }
+
+ // Load the phone number (if any).
+ cursor = contentResolver.query(Phone.CONTENT_URI,
+ new String[]{Phone.NUMBER},
+ Phone.CONTACT_ID + "=" + contactId, null, Phone.IS_SUPER_PRIMARY + " DESC");
+ try {
+ if (cursor.moveToFirst()) {
+ contactInfo.setPhoneNumber(cursor.getString(0));
+ }
+ } finally {
+ cursor.close();
+ }
+
+ return contactInfo;
+ }
+}
diff --git a/samples/BusinessCard/src/com/example/android/businesscard/ContactInfo.java b/samples/BusinessCard/src/com/example/android/businesscard/ContactInfo.java
new file mode 100644
index 0000000..61a6f3b
--- /dev/null
+++ b/samples/BusinessCard/src/com/example/android/businesscard/ContactInfo.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2009 The Android Open Source 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.
+ */
+
+package com.example.android.businesscard;
+
+/**
+ * A model object containing contact data.
+ */
+public class ContactInfo {
+
+ private String mDisplayName;
+ private String mPhoneNumber;
+
+ public void setDisplayName(String displayName) {
+ this.mDisplayName = displayName;
+ }
+
+ public String getDisplayName() {
+ return mDisplayName;
+ }
+
+ public void setPhoneNumber(String phoneNumber) {
+ this.mPhoneNumber = phoneNumber;
+ }
+
+ public String getPhoneNumber() {
+ return mPhoneNumber;
+ }
+}
diff --git a/samples/CubeLiveWallpaper/src/com/android/livecubes/cube1/CubeWallpaper1.java b/samples/CubeLiveWallpaper/src/com/android/livecubes/cube1/CubeWallpaper1.java
index 9279065..52a708a 100644
--- a/samples/CubeLiveWallpaper/src/com/android/livecubes/cube1/CubeWallpaper1.java
+++ b/samples/CubeLiveWallpaper/src/com/android/livecubes/cube1/CubeWallpaper1.java
@@ -123,7 +123,8 @@
}
@Override
- public void onOffsetsChanged(float xOffset, float yOffset, int xPixels, int yPixels) {
+ public void onOffsetsChanged(float xOffset, float yOffset,
+ float xStep, float yStep, int xPixels, int yPixels) {
mOffset = xOffset;
drawFrame();
}
diff --git a/samples/CubeLiveWallpaper/src/com/android/livecubes/cube2/CubeWallpaper2.java b/samples/CubeLiveWallpaper/src/com/android/livecubes/cube2/CubeWallpaper2.java
index 43f1326..0c6d90e 100644
--- a/samples/CubeLiveWallpaper/src/com/android/livecubes/cube2/CubeWallpaper2.java
+++ b/samples/CubeLiveWallpaper/src/com/android/livecubes/cube2/CubeWallpaper2.java
@@ -190,7 +190,8 @@
}
@Override
- public void onOffsetsChanged(float xOffset, float yOffset, int xPixels, int yPixels) {
+ public void onOffsetsChanged(float xOffset, float yOffset,
+ float xStep, float yStep, int xPixels, int yPixels) {
mOffset = xOffset;
drawFrame();
}
diff --git a/samples/CubeLiveWallpaper/src/com/android/livecubes/cube3/RenderScriptWallpaper.java b/samples/CubeLiveWallpaper/src/com/android/livecubes/cube3/RenderScriptWallpaper.java
index c30a619..257c7ea 100644
--- a/samples/CubeLiveWallpaper/src/com/android/livecubes/cube3/RenderScriptWallpaper.java
+++ b/samples/CubeLiveWallpaper/src/com/android/livecubes/cube3/RenderScriptWallpaper.java
@@ -72,6 +72,9 @@
@Override
public void onSurfaceChanged(SurfaceHolder holder, int format, int width, int height) {
super.onSurfaceChanged(holder, format, width, height);
+ if (mRs != null) {
+ mRs.contextSetSurface(width, height, holder.getSurface());
+ }
if (mRenderer == null) {
mRenderer = createScene(width, height);
mRenderer.init(mRs, getResources(), isPreview());
@@ -82,7 +85,8 @@
}
@Override
- public void onOffsetsChanged(float xOffset, float yOffset, int xPixels, int yPixels) {
+ public void onOffsetsChanged(float xOffset, float yOffset,
+ float xStep, float yStep, int xPixels, int yPixels) {
mRenderer.setOffset(xOffset, yOffset, xPixels, yPixels);
}
@@ -94,7 +98,7 @@
while (surface == null) {
surface = holder.getSurface();
}
- mRs = new RenderScript(surface, false, false);
+ mRs = new RenderScript(false, false);
}
@Override
diff --git a/samples/SearchableDictionary/src/com/example/android/searchabledict/DictionaryProvider.java b/samples/SearchableDictionary/src/com/example/android/searchabledict/DictionaryProvider.java
index db626e8..586fddb 100644
--- a/samples/SearchableDictionary/src/com/example/android/searchabledict/DictionaryProvider.java
+++ b/samples/SearchableDictionary/src/com/example/android/searchabledict/DictionaryProvider.java
@@ -106,16 +106,17 @@
List<Dictionary.Word> words = Dictionary.getInstance().getMatches(processedQuery);
MatrixCursor cursor = new MatrixCursor(COLUMNS);
+ long id = 0;
for (Dictionary.Word word : words) {
- cursor.addRow(columnValuesOfWord(word));
+ cursor.addRow(columnValuesOfWord(id++, word));
}
return cursor;
}
- private Object[] columnValuesOfWord(Dictionary.Word word) {
- return new String[] {
- word.word, // _id
+ private Object[] columnValuesOfWord(long id, Dictionary.Word word) {
+ return new Object[] {
+ id, // _id
word.word, // text1
word.definition, // text2
word.word, // intent_data (included when clicking on item)
diff --git a/sdk_overlay/packages/inputmethods/LatinIME/res/values/bools.xml b/sdk_overlay/packages/inputmethods/LatinIME/res/values/bools.xml
new file mode 100644
index 0000000..fa5cde6
--- /dev/null
+++ b/sdk_overlay/packages/inputmethods/LatinIME/res/values/bools.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2008, The Android Open Source 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.
+*/
+-->
+<resources>
+ <!-- Make the LatinIME the default one for the SDK build. -->
+ <bool name="im_is_default">true</bool>
+</resources>
diff --git a/testrunner/android_manifest.py b/testrunner/android_manifest.py
index 5406f56..5825118 100644
--- a/testrunner/android_manifest.py
+++ b/testrunner/android_manifest.py
@@ -36,6 +36,10 @@
if app_path:
self.ParseManifest(app_path)
+ def GetAppPath(self):
+ """Retrieve file system path to this manifest file's directory."""
+ return self._app_path
+
def GetPackageName(self):
"""Retrieve package name defined at <manifest package="...">.
@@ -56,6 +60,7 @@
IOError: AndroidManifest.xml cannot be found at given path, or cannot be
opened for reading
"""
+ self._app_path = app_path
self._manifest_path = os.path.join(app_path, self.FILENAME)
self._dom = xml.dom.minidom.parse(self._manifest_path)
@@ -76,6 +81,18 @@
uses_sdk_element.setAttribute('android:minSdkVersion', min_sdk_version)
self._SaveXml()
+ def GetInstrumentationNames(self):
+ """Get the instrumentation names from manifest.
+
+ Returns:
+ list of names, might be empty
+ """
+ instr_elements = self._dom.getElementsByTagName('instrumentation')
+ instrs = []
+ for element in instr_elements:
+ instrs.append(element.getAttribute('android:name'))
+ return instrs
+
def _GetManifestElement(self):
"""Retrieve the root manifest element.
@@ -90,3 +107,4 @@
def _SaveXml(self):
"""Saves the manifest to disk."""
self._dom.writexml(open(self._manifest_path, mode='w'), encoding='utf-8')
+
diff --git a/testrunner/coverage.py b/testrunner/coverage.py
index eb46f1f..c94fc26 100755
--- a/testrunner/coverage.py
+++ b/testrunner/coverage.py
@@ -321,7 +321,7 @@
options, args = parser.parse_args()
- coverage = CoverageGenerator(android_build.GetTop(), None)
+ coverage = CoverageGenerator(None)
if options.combine_coverage:
coverage.CombineCoverage()
if options.tidy:
diff --git a/testrunner/coverage_targets.xml b/testrunner/coverage_targets.xml
index 1d7707b..5fe1233 100644
--- a/testrunner/coverage_targets.xml
+++ b/testrunner/coverage_targets.xml
@@ -98,8 +98,6 @@
type="APPS" />
<coverage_target name="GmailProvider"
build_path="partner/google/providers/gmail" type="APPS" />
- <coverage_target name="ImProvider"
- build_path="packages/providers/ImProvider" type="APPS" />
<coverage_target name="MediaProvider"
build_path="packages/providers/MediaProvider" type="APPS" />
<coverage_target name="SettingsProvider"
diff --git a/testrunner/run_command.py b/testrunner/run_command.py
index 926cc6b..d398daa 100755
--- a/testrunner/run_command.py
+++ b/testrunner/run_command.py
@@ -112,7 +112,7 @@
logger.Log(e)
so.append("ERROR")
error_occurred = True
- if pipe.returncode != 0:
+ if pipe.returncode:
logger.SilentLog("Error: %s returned %d error code" %(cmd,
pipe.returncode))
error_occurred = True
diff --git a/testrunner/runtest.py b/testrunner/runtest.py
index e637b71..a4d7231 100755
--- a/testrunner/runtest.py
+++ b/testrunner/runtest.py
@@ -14,9 +14,19 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-"""Command line utility for running a pre-defined test.
+"""Command line utility for running Android tests
-Based on previous <androidroot>/development/tools/runtest shell script.
+runtest helps automate the instructions for building and running tests
+- It builds the corresponding test package for the code you want to test
+- It pushes the test package to your device or emulator
+- It launches InstrumentationTestRunner (or similar) to run the tests you
+specify.
+
+runtest supports running tests whose attributes have been pre-defined in
+_TEST_FILE_NAME files, (runtest <testname>), or by specifying the file
+system path to the test to run (runtest --path <path>).
+
+Do runtest --help to see full list of options.
"""
# Python imports
@@ -34,6 +44,7 @@
import logger
import run_command
from test_defs import test_defs
+from test_defs import test_walker
class TestRunner(object):
@@ -57,7 +68,7 @@
"for a list of tests, or you can launch one or more tests.")
# default value for make -jX
- _DEFAULT_JOBS=4
+ _DEFAULT_JOBS = 4
def __init__(self):
# disable logging of timestamp
@@ -67,6 +78,7 @@
self._known_tests = None
self._options = None
self._test_args = None
+ self._tests_to_run = None
def _ProcessOptions(self):
"""Processes command-line options."""
@@ -114,6 +126,8 @@
parser.add_option("-o", "--coverage", dest="coverage",
default=False, action="store_true",
help="Generate code coverage metrics for test(s)")
+ parser.add_option("-x", "--path", dest="test_path",
+ help="Run test(s) at given file system path")
parser.add_option("-t", "--all-tests", dest="all_tests",
default=False, action="store_true",
help="Run all defined tests")
@@ -145,6 +159,7 @@
and not self._options.all_tests
and not self._options.continuous_tests
and not self._options.cts_tests
+ and not self._options.test_path
and len(self._test_args) < 1):
parser.print_help()
logger.SilentLog("at least one test name must be specified")
@@ -217,11 +232,14 @@
# cts dependencies are removed
if self._IsCtsTests(tests):
# need to use make since these fail building with ONE_SHOT_MAKEFILE
- cmd=('make -j%s CtsTestStubs android.core.tests.runner' %
- self._options.make_jobs)
+ cmd = ('make -j%s CtsTestStubs android.core.tests.runner' %
+ self._options.make_jobs)
logger.Log(cmd)
if not self._options.preview:
+ old_dir = os.getcwd()
+ os.chdir(self._root_path)
run_command.RunCommand(cmd, return_output=False)
+ os.chdir(old_dir)
target_build_string = " ".join(list(target_set))
extra_args_string = " ".join(list(extra_args_set))
# mmm cannot be used from python, so perform a similar operation using
@@ -253,25 +271,34 @@
if os.path.isfile(os.path.join(self._root_path, build_file_path)):
target_set.add(build_file_path)
return True
+ else:
+ logger.Log("%s has no Android.mk, skipping" % build_dir)
return False
def _GetTestsToRun(self):
"""Get a list of TestSuite objects to run, based on command line args."""
+ if self._tests_to_run:
+ return self._tests_to_run
+
+ self._tests_to_run = []
if self._options.all_tests:
- return self._known_tests.GetTests()
+ self._tests_to_run = self._known_tests.GetTests()
elif self._options.continuous_tests:
- return self._known_tests.GetContinuousTests()
+ self._tests_to_run = self._known_tests.GetContinuousTests()
elif self._options.cts_tests:
- return self._known_tests.GetCtsTests()
- tests = []
+ self._tests_to_run = self._known_tests.GetCtsTests()
+ elif self._options.test_path:
+ walker = test_walker.TestWalker()
+ self._tests_to_run = walker.FindTests(self._options.test_path)
+
for name in self._test_args:
test = self._known_tests.GetTest(name)
if test is None:
logger.Log("Error: Could not find test %s" % name)
self._DumpTests()
raise errors.AbortError
- tests.append(test)
- return tests
+ self._tests_to_run.append(test)
+ return self._tests_to_run
def _IsCtsTests(self, test_list):
"""Check if any cts tests are included in given list of tests to run."""
diff --git a/testrunner/test_defs.xml b/testrunner/test_defs.xml
index 42eae3a..ad2017c 100644
--- a/testrunner/test_defs.xml
+++ b/testrunner/test_defs.xml
@@ -354,8 +354,7 @@
<test name="calprov"
build_path="packages/providers/CalendarProvider/tests"
package="com.android.providers.calendar.tests"
- coverage_target="CalendarProvider"
- continuous="true" />
+ coverage_target="CalendarProvider" />
<test name="camerastress"
build_path="packages/apps/Camera"
@@ -390,6 +389,12 @@
description="Tests for the Contacts app."
continuous="true" />
+<test name="contacts-launch"
+ build_path="packages/apps/Contacts"
+ package="com.android.contacts.tests"
+ runner="com.android.contacts.ContactsLaunchPerformance"
+ description="Launch performance for Contacts." />
+
<test name="gcontactsprov"
build_path="packages/providers/GoogleContactsProvider/tests"
package="com.android.providers.contactstests"
diff --git a/testrunner/test_defs/__init__.py b/testrunner/test_defs/__init__.py
index c205dcb..f397d2a 100644
--- a/testrunner/test_defs/__init__.py
+++ b/testrunner/test_defs/__init__.py
@@ -1 +1 @@
-__all__ = ['test_defs']
+__all__ = ['test_defs', 'test_walker']
diff --git a/testrunner/test_defs/abstract_test.py b/testrunner/test_defs/abstract_test.py
deleted file mode 100644
index e0c8db2..0000000
--- a/testrunner/test_defs/abstract_test.py
+++ /dev/null
@@ -1,113 +0,0 @@
-#!/usr/bin/python2.4
-#
-#
-# Copyright 2009, The Android Open Source 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.
-
-"""Abstract Android test suite."""
-
-# Python imports
-import xml.dom.minidom
-import xml.parsers
-
-# local imports
-import errors
-
-
-class AbstractTestSuite(object):
- """Represents a generic test suite definition parsed from xml.
-
- This class will parse the XML attributes common to all TestSuite's.
- """
-
- # name of xml tag a test suite handles. subclasses must define this.
- TAG_NAME = "unspecified"
-
- _NAME_ATTR = "name"
- _BUILD_ATTR = "build_path"
- _CONTINUOUS_ATTR = "continuous"
- _CTS_ATTR = "cts"
- _DESCRIPTION_ATTR = "description"
- _EXTRA_BUILD_ARGS_ATTR = "extra_build_args"
-
- def __init__(self):
- self._attr_map = {}
-
- def Parse(self, suite_element):
- """Populates this instance's data from given suite xml element.
- Raises:
- ParseError if a required attribute is missing.
- """
- # parse name first so it can be used for error reporting
- self._ParseAttribute(suite_element, self._NAME_ATTR, True)
- self._ParseAttribute(suite_element, self._BUILD_ATTR, True)
- self._ParseAttribute(suite_element, self._CONTINUOUS_ATTR, False,
- default_value=False)
- self._ParseAttribute(suite_element, self._CTS_ATTR, False,
- default_value=False)
- self._ParseAttribute(suite_element, self._DESCRIPTION_ATTR, False,
- default_value="")
- self._ParseAttribute(suite_element, self._EXTRA_BUILD_ARGS_ATTR, False,
- default_value="")
-
- def _ParseAttribute(self, suite_element, attribute_name, mandatory,
- default_value=None):
- if suite_element.hasAttribute(attribute_name):
- self._attr_map[attribute_name] = \
- suite_element.getAttribute(attribute_name)
- elif mandatory:
- error_msg = ("Could not find attribute %s in %s %s" %
- (attribute_name, self.TAG_NAME, self.GetName()))
- raise errors.ParseError(msg=error_msg)
- else:
- self._attr_map[attribute_name] = default_value
-
- def GetName(self):
- return self._GetAttribute(self._NAME_ATTR)
-
- def GetBuildPath(self):
- """Returns the build path of this test, relative to source tree root."""
- return self._GetAttribute(self._BUILD_ATTR)
-
- def GetBuildDependencies(self, options):
- """Returns a list of dependent build paths."""
- return []
-
- def IsContinuous(self):
- """Returns true if test is flagged as being part of the continuous tests"""
- return self._GetAttribute(self._CONTINUOUS_ATTR)
-
- def IsCts(self):
- """Returns true if test is part of the compatibility test suite"""
- return self._GetAttribute(self._CTS_ATTR)
-
- def GetDescription(self):
- """Returns a description if available, an empty string otherwise."""
- return self._GetAttribute(self._DESCRIPTION_ATTR)
-
- def GetExtraBuildArgs(self):
- """Returns the extra build args if available, an empty string otherwise."""
- return self._GetAttribute(self._EXTRA_BUILD_ARGS_ATTR)
-
- def _GetAttribute(self, attribute_name):
- return self._attr_map.get(attribute_name)
-
- def Run(self, options, adb):
- """Runs the test.
-
- Subclasses must implement this.
- Args:
- options: global command line options
- """
- raise NotImplementedError
diff --git a/testrunner/test_defs/host_test.py b/testrunner/test_defs/host_test.py
index 4aefa3a..8105075 100644
--- a/testrunner/test_defs/host_test.py
+++ b/testrunner/test_defs/host_test.py
@@ -20,23 +20,15 @@
# python imports
import os
-# local imports
-from abstract_test import AbstractTestSuite
import errors
import logger
import run_command
+import test_suite
-class HostTestSuite(AbstractTestSuite):
+class HostTestSuite(test_suite.AbstractTestSuite):
"""A test suite for running hosttestlib java tests."""
- TAG_NAME = "test-host"
-
- _CLASS_ATTR = "class"
- # TODO: consider obsoleting in favor of parsing the Android.mk to find the
- # jar name
- _JAR_ATTR = "jar_name"
-
_JUNIT_JAR_NAME = "junit.jar"
_HOSTTESTLIB_NAME = "hosttestlib.jar"
_DDMLIB_NAME = "ddmlib.jar"
@@ -54,21 +46,29 @@
# the test suite?
_TEST_RUNNER = "com.android.hosttest.DeviceTestRunner"
- def Parse(self, suite_element):
- super(HostTestSuite, self).Parse(suite_element)
- self._ParseAttribute(suite_element, self._CLASS_ATTR, True)
- self._ParseAttribute(suite_element, self._JAR_ATTR, True)
+ def __init__(self):
+ test_suite.AbstractTestSuite.__init__(self)
+ self._jar_name = None
+ self._class_name = None
def GetBuildDependencies(self, options):
"""Override parent to tag on building host libs."""
return self._LIB_BUILD_PATHS
- def GetClass(self):
- return self._GetAttribute(self._CLASS_ATTR)
+ def GetClassName(self):
+ return self._class_name
+
+ def SetClassName(self, class_name):
+ self._class_name = class_name
+ return self
def GetJarName(self):
"""Returns the name of the host jar that contains the tests."""
- return self._GetAttribute(self._JAR_ATTR)
+ return self._jar_name
+
+ def SetJarName(self, jar_name):
+ self._jar_name = jar_name
+ return self
def Run(self, options, adb_interface):
"""Runs the host test.
@@ -77,11 +77,14 @@
Args:
options: command line options for running host tests. Expected member
- fields:
+ fields:
host_lib_path: path to directory that contains host library files
test_data_path: path to directory that contains test data files
preview: if true, do not execute, display commands only
adb_interface: reference to device under test
+
+ Raises:
+ errors.AbortError: if fatal error occurs
"""
# get the serial number of the device under test, so it can be passed to
# hosttestlib.
@@ -100,7 +103,7 @@
# -p <test data path>
cmd = "java -cp %s %s %s -s %s -p %s" % (":".join(full_lib_paths),
self._TEST_RUNNER,
- self.GetClass(), serial_number,
+ self.GetClassName(), serial_number,
options.test_data_path)
logger.Log(cmd)
if not options.preview:
diff --git a/testrunner/test_defs/instrumentation_test.py b/testrunner/test_defs/instrumentation_test.py
index 24b4b88..401a980 100644
--- a/testrunner/test_defs/instrumentation_test.py
+++ b/testrunner/test_defs/instrumentation_test.py
@@ -21,59 +21,75 @@
import os
# local imports
-from abstract_test import AbstractTestSuite
import coverage
import errors
import logger
+import test_suite
-class InstrumentationTestSuite(AbstractTestSuite):
- """Represents a java instrumentation test suite definition run on Android device."""
+class InstrumentationTestSuite(test_suite.AbstractTestSuite):
+ """Represents a java instrumentation test suite definition run on device."""
- # for legacy reasons, the xml tag name for java (device) tests is "test:
- TAG_NAME = "test"
-
- _PKG_ATTR = "package"
- _RUNNER_ATTR = "runner"
- _CLASS_ATTR = "class"
- _TARGET_ATTR = "coverage_target"
-
- _DEFAULT_RUNNER = "android.test.InstrumentationTestRunner"
+ DEFAULT_RUNNER = "android.test.InstrumentationTestRunner"
# build path to Emma target Makefile
_EMMA_BUILD_PATH = os.path.join("external", "emma")
- def _GetTagName(self):
- return self._TAG_NAME
+ def __init__(self):
+ test_suite.AbstractTestSuite.__init__(self)
+ self._package_name = None
+ self._runner_name = self.DEFAULT_RUNNER
+ self._class_name = None
+ self._target_name = None
+ self._java_package = None
def GetPackageName(self):
- return self._GetAttribute(self._PKG_ATTR)
+ return self._package_name
+
+ def SetPackageName(self, package_name):
+ self._package_name = package_name
+ return self
def GetRunnerName(self):
- return self._GetAttribute(self._RUNNER_ATTR)
+ return self._runner_name
+
+ def SetRunnerName(self, runner_name):
+ self._runner_name = runner_name
+ return self
def GetClassName(self):
- return self._GetAttribute(self._CLASS_ATTR)
+ return self._class_name
+
+ def SetClassName(self, class_name):
+ self._class_name = class_name
+ return self
+
+ def GetJavaPackageFilter(self):
+ return self._java_package
+
+ def SetJavaPackageFilter(self, java_package_name):
+ """Configure the suite to only run tests in given java package."""
+ self._java_package = java_package_name
+ return self
def GetTargetName(self):
"""Retrieve module that this test is targeting.
Used for generating code coverage metrics.
+ Returns:
+ the module target name
"""
- return self._GetAttribute(self._TARGET_ATTR)
+ return self._target_name
+
+ def SetTargetName(self, target_name):
+ self._target_name = target_name
+ return self
def GetBuildDependencies(self, options):
if options.coverage:
return [self._EMMA_BUILD_PATH]
return []
- def Parse(self, suite_element):
- super(InstrumentationTestSuite, self).Parse(suite_element)
- self._ParseAttribute(suite_element, self._PKG_ATTR, True)
- self._ParseAttribute(suite_element, self._RUNNER_ATTR, False, self._DEFAULT_RUNNER)
- self._ParseAttribute(suite_element, self._CLASS_ATTR, False)
- self._ParseAttribute(suite_element, self._TARGET_ATTR, False)
-
def Run(self, options, adb):
"""Run the provided test suite.
@@ -82,6 +98,9 @@
Args:
options: command line options to provide to test run
adb: adb_interface to device under test
+
+ Raises:
+ errors.AbortError: if fatal error occurs
"""
test_class = self.GetClassName()
@@ -92,11 +111,18 @@
if options.test_method is not None:
test_class = "%s#%s" % (test_class, options.test_method)
+ test_package = self.GetJavaPackageFilter()
+ if options.test_package:
+ test_package = options.test_package
+
+ if test_class and test_package:
+ logger.Log('Error: both class and java package options are specified')
+
instrumentation_args = {}
if test_class is not None:
instrumentation_args["class"] = test_class
- if options.test_package:
- instrumentation_args["package"] = options.test_package
+ if test_package:
+ instrumentation_args["package"] = test_package
if options.test_size:
instrumentation_args["size"] = options.test_size
if options.wait_for_debugger:
@@ -122,10 +148,10 @@
logger.Log("Running in coverage mode, suppressing test output")
try:
(test_results, status_map) = adb.StartInstrumentationForPackage(
- package_name=self.GetPackageName(),
- runner_name=self.GetRunnerName(),
- timeout_time=60*60,
- instrumentation_args=instrumentation_args)
+ package_name=self.GetPackageName(),
+ runner_name=self.GetRunnerName(),
+ timeout_time=60*60,
+ instrumentation_args=instrumentation_args)
except errors.InstrumentationError, errors.DeviceUnresponsiveError:
return
self._PrintTestResults(test_results)
@@ -156,11 +182,11 @@
error_count = 0
fail_count = 0
for test_result in test_results:
- if test_result.GetStatusCode() == -1: # error
+ if test_result.GetStatusCode() == -1: # error
logger.Log("Error in %s: %s" % (test_result.GetTestName(),
test_result.GetFailureReason()))
error_count+=1
- elif test_result.GetStatusCode() == -2: # failure
+ elif test_result.GetStatusCode() == -2: # failure
logger.Log("Failure in %s: %s" % (test_result.GetTestName(),
test_result.GetFailureReason()))
fail_count+=1
diff --git a/testrunner/test_defs/native_test.py b/testrunner/test_defs/native_test.py
index d250de2..e6917c9 100644
--- a/testrunner/test_defs/native_test.py
+++ b/testrunner/test_defs/native_test.py
@@ -18,28 +18,19 @@
"""TestSuite for running native Android tests."""
# python imports
-import re
import os
+import re
# local imports
-from abstract_test import AbstractTestSuite
import android_build
import logger
import run_command
+import test_suite
-class NativeTestSuite(AbstractTestSuite):
+class NativeTestSuite(test_suite.AbstractTestSuite):
"""A test suite for running native aka C/C++ tests on device."""
- TAG_NAME = "test-native"
-
- def _GetTagName(self):
- return self._TAG_NAME
-
- def Parse(self, suite_element):
- super(NativeTestSuite, self).Parse(suite_element)
-
-
def Run(self, options, adb):
"""Run the provided *native* test suite.
@@ -61,7 +52,7 @@
# find all test files, convert unicode names to ascii, take the basename
# and drop the .cc/.cpp extension.
source_list = []
- build_path = self.GetBuildPath()
+ build_path = os.path.join(android_build.GetTop(), self.GetBuildPath())
os.path.walk(build_path, self._CollectTestSources, source_list)
logger.SilentLog("Tests source %s" % source_list)
diff --git a/testrunner/test_defs/test_defs.py b/testrunner/test_defs/test_defs.py
index 7f23b89..6d885fa 100644
--- a/testrunner/test_defs/test_defs.py
+++ b/testrunner/test_defs/test_defs.py
@@ -24,9 +24,7 @@
# local imports
import errors
import logger
-from instrumentation_test import InstrumentationTestSuite
-from native_test import NativeTestSuite
-from host_test import HostTestSuite
+import xml_suite_helper
class TestDefinitions(object):
@@ -74,21 +72,13 @@
def _ParseDoc(self, doc):
root_element = self._GetRootElement(doc)
+ suite_parser = xml_suite_helper.XmlSuiteParser()
for element in root_element.childNodes:
if element.nodeType != xml.dom.Node.ELEMENT_NODE:
continue
- test_suite = None
- if element.nodeName == InstrumentationTestSuite.TAG_NAME:
- test_suite = InstrumentationTestSuite()
- elif element.nodeName == NativeTestSuite.TAG_NAME:
- test_suite = NativeTestSuite()
- elif element.nodeName == HostTestSuite.TAG_NAME:
- test_suite = HostTestSuite()
- else:
- logger.Log("Unrecognized tag %s found" % element.nodeName)
- continue
- test_suite.Parse(element)
- self._AddTest(test_suite)
+ test_suite = suite_parser.Parse(element)
+ if test_suite:
+ self._AddTest(test_suite)
def _GetRootElement(self, doc):
root_elements = doc.getElementsByTagName("test-definitions")
diff --git a/testrunner/test_defs/test_suite.py b/testrunner/test_defs/test_suite.py
new file mode 100644
index 0000000..42a0de1
--- /dev/null
+++ b/testrunner/test_defs/test_suite.py
@@ -0,0 +1,96 @@
+#!/usr/bin/python2.4
+#
+#
+# Copyright 2009, The Android Open Source 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.
+
+"""Abstract Android test suite."""
+
+
+class AbstractTestSuite(object):
+ """Represents a generic test suite definition."""
+
+ def __init__(self):
+ self._name = None
+ self._build_path = None
+ self._build_dependencies = []
+ self._is_continuous = False
+ self._is_cts = False
+ self._description = ''
+ self._extra_build_args = ''
+
+ def GetName(self):
+ return self._name
+
+ def SetName(self, name):
+ self._name = name
+ return self
+
+ def GetBuildPath(self):
+ """Returns the build path of this test, relative to source tree root."""
+ return self._build_path
+
+ def SetBuildPath(self, build_path):
+ self._build_path = build_path
+ return self
+
+ def GetBuildDependencies(self, options):
+ """Returns a list of dependent build paths."""
+ return self._build_dependencies
+
+ def SetBuildDependencies(self, build_dependencies):
+ self._build_dependencies = build_dependencies
+ return self
+
+ def IsContinuous(self):
+ """Returns true if test is part of the continuous test."""
+ return self._is_continuous
+
+ def SetContinuous(self, continuous):
+ self._is_continuous = continuous
+ return self._is_continuous
+
+ def IsCts(self):
+ """Returns true if test is part of the compatibility test suite"""
+ return self._is_cts
+
+ def SetCts(self, cts):
+ self._is_cts = cts
+ return self
+
+ def GetDescription(self):
+ """Returns a description if available, an empty string otherwise."""
+ return self._description
+
+ def SetDescription(self, desc):
+ self._description = desc
+ return self
+
+ def GetExtraBuildArgs(self):
+ """Returns the extra build args if available, an empty string otherwise."""
+ return self._extra_build_args
+
+ def SetExtraBuildArgs(self, build_args):
+ self._extra_build_args = build_args
+ return self
+
+ def Run(self, options, adb):
+ """Runs the test.
+
+ Subclasses must implement this.
+ Args:
+ options: global command line options
+ adb: asdb_interface to device under test
+ """
+ raise NotImplementedError
diff --git a/testrunner/test_defs/test_walker.py b/testrunner/test_defs/test_walker.py
new file mode 100755
index 0000000..973cac1
--- /dev/null
+++ b/testrunner/test_defs/test_walker.py
@@ -0,0 +1,296 @@
+#!/usr/bin/python2.4
+#
+#
+# Copyright 2009, The Android Open Source 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.
+
+"""Utility to find instrumentation test definitions from file system."""
+
+# python imports
+import os
+import re
+
+# local imports
+import android_build
+import android_manifest
+import android_mk
+import instrumentation_test
+import logger
+
+
+class TestWalker(object):
+ """Finds instrumentation tests from filesystem."""
+
+ def FindTests(self, path):
+ """Gets list of Android instrumentation tests found at given path.
+
+ Tests are created from the <instrumentation> tags found in
+ AndroidManifest.xml files relative to the given path.
+
+ FindTests will first scan sub-folders of path for tests. If none are found,
+ it will scan the file system upwards until a AndroidManifest.xml is found
+ or the Android build root is reached.
+
+ Some sample values for path:
+ - a parent directory containing many tests:
+ ie development/samples will return tests for instrumentation's in ApiDemos,
+ ApiDemos/tests, Notepad/tests etc
+ - a java test class file
+ ie ApiDemos/tests/src/../ApiDemosTest.java will return a test for
+ the instrumentation in ApiDemos/tests, with the class name filter set to
+ ApiDemosTest
+ - a java package directory
+ ie ApiDemos/tests/src/com/example/android/apis will return a test for
+ the instrumentation in ApiDemos/tests, with the java package filter set
+ to com.example.android.apis.
+
+ Args:
+ path: file system path to search
+
+ Returns:
+ list of test suites that support operations defined by
+ test_suite.AbstractTestSuite
+ """
+ if not os.path.exists(path):
+ logger.Log('%s does not exist' % path)
+ return []
+ abspath = os.path.abspath(path)
+ # ensure path is in ANDROID_BUILD_ROOT
+ self._build_top = android_build.GetTop()
+ if not self._IsPathInBuildTree(abspath):
+ logger.Log('%s is not a sub-directory of build root %s' %
+ (path, self._build_top))
+ return []
+
+ # first, assume path is a parent directory, which specifies to run all
+ # tests within this directory
+ tests = self._FindSubTests(abspath, [])
+ if not tests:
+ logger.SilentLog('No tests found within %s, searching upwards' % path)
+ tests = self._FindUpstreamTests(abspath)
+ return tests
+
+ def _IsPathInBuildTree(self, path):
+ """Return true if given path is within current Android build tree.
+
+ Args:
+ path: absolute file system path
+
+ Returns:
+ True if path is within Android build tree
+ """
+ return os.path.commonprefix([self._build_top, path]) == self._build_top
+
+ def _MakePathRelativeToBuild(self, path):
+ """Convert given path to one relative to build tree root.
+
+ Args:
+ path: absolute file system path to convert.
+
+ Returns:
+ The converted path relative to build tree root.
+
+ Raises:
+ ValueError: if path is not within build tree
+ """
+ if not self._IsPathInBuildTree(path):
+ raise ValueError
+ build_path_len = len(self._build_top) + 1
+ # return string with common build_path removed
+ return path[build_path_len:]
+
+ def _FindSubTests(self, path, tests, build_path=None):
+ """Recursively finds all tests within given path.
+
+ Args:
+ path: absolute file system path to check
+ tests: current list of found tests
+ build_path: the parent directory where Android.mk was found
+
+ Returns:
+ updated list of tests
+ """
+ if not os.path.isdir(path):
+ return tests
+ filenames = os.listdir(path)
+ # Try to build as much of original path as possible, so
+ # keep track of upper-most parent directory where Android.mk was found
+ # this is also necessary in case of overlapping tests
+ # ie if a test exists at 'foo' directory and 'foo/sub', attempting to
+ # build both 'foo' and 'foo/sub' will fail.
+ if not build_path and filenames.count(android_mk.AndroidMK.FILENAME):
+ build_path = self._MakePathRelativeToBuild(path)
+ if filenames.count(android_manifest.AndroidManifest.FILENAME):
+ # found a manifest! now parse it to find the test definition(s)
+ manifest = android_manifest.AndroidManifest(app_path=path)
+ tests.extend(self._CreateSuitesFromManifest(manifest, build_path))
+ for filename in filenames:
+ self._FindSubTests(os.path.join(path, filename), tests, build_path)
+ return tests
+
+ def _FindUpstreamTests(self, path):
+ """Find tests defined upward from given path.
+
+ Args:
+ path: the location to start searching. If it points to a java class file
+ or java package dir, the appropriate test suite filters will be set
+
+ Returns:
+ list of test_suite.AbstractTestSuite found, may be empty
+ """
+ class_name_arg = None
+ package_name = None
+ # if path is java file, populate class name
+ if self._IsJavaFile(path):
+ class_name_arg = self._GetClassNameFromFile(path)
+ logger.SilentLog('Using java test class %s' % class_name_arg)
+ elif self._IsJavaPackage(path):
+ package_name = self._GetPackageNameFromDir(path)
+ logger.SilentLog('Using java package %s' % package_name)
+ manifest = self._FindUpstreamManifest(path)
+ if manifest:
+ logger.SilentLog('Found AndroidManifest at %s' % manifest.GetAppPath())
+ build_path = self._MakePathRelativeToBuild(manifest.GetAppPath())
+ return self._CreateSuitesFromManifest(manifest,
+ build_path,
+ class_name=class_name_arg,
+ java_package_name=package_name)
+
+ def _IsJavaFile(self, path):
+ """Returns true if given file system path is a java file."""
+ return os.path.isfile(path) and self._IsJavaFileName(path)
+
+ def _IsJavaFileName(self, filename):
+ """Returns true if given file name is a java file name."""
+ return os.path.splitext(filename)[1] == '.java'
+
+ def _IsJavaPackage(self, path):
+ """Returns true if given file path is a java package.
+
+ Currently assumes if any java file exists in this directory, than it
+ represents a java package.
+
+ Args:
+ path: file system path of directory to check
+
+ Returns:
+ True if path is a java package
+ """
+ if not os.path.isdir(path):
+ return False
+ for file_name in os.listdir(path):
+ if self._IsJavaFileName(file_name):
+ return True
+ return False
+
+ def _GetClassNameFromFile(self, java_file_path):
+ """Gets the fully qualified java class name from path.
+
+ Args:
+ java_file_path: file system path of java file
+
+ Returns:
+ fully qualified java class name or None.
+ """
+ package_name = self._GetPackageNameFromFile(java_file_path)
+ if package_name:
+ filename = os.path.basename(java_file_path)
+ class_name = os.path.splitext(filename)[0]
+ return '%s.%s' % (package_name, class_name)
+ return None
+
+ def _GetPackageNameFromDir(self, path):
+ """Gets the java package name associated with given directory path.
+
+ Caveat: currently just parses defined java package name from first java
+ file found in directory.
+
+ Args:
+ path: file system path of directory
+
+ Returns:
+ the java package name or None
+ """
+ for filename in os.listdir(path):
+ if self._IsJavaFileName(filename):
+ return self._GetPackageNameFromFile(os.path.join(path, filename))
+
+ def _GetPackageNameFromFile(self, java_file_path):
+ """Gets the java package name associated with given java file path.
+
+ Args:
+ java_file_path: file system path of java file
+
+ Returns:
+ the java package name or None
+ """
+ logger.SilentLog('Looking for java package name in %s' % java_file_path)
+ re_package = re.compile(r'package\s+(.*);')
+ file_handle = open(java_file_path, 'r')
+ for line in file_handle:
+ match = re_package.match(line)
+ if match:
+ return match.group(1)
+ return None
+
+ def _FindUpstreamManifest(self, path):
+ """Recursively searches filesystem upwards for a AndroidManifest file.
+
+ Args:
+ path: file system path to search
+
+ Returns:
+ the AndroidManifest found or None
+ """
+ if (os.path.isdir(path) and
+ os.listdir(path).count(android_manifest.AndroidManifest.FILENAME)):
+ return android_manifest.AndroidManifest(app_path=path)
+ dirpath = os.path.dirname(path)
+ if self._IsPathInBuildTree(path):
+ return self._FindUpstreamManifest(dirpath)
+ logger.Log('AndroidManifest.xml not found')
+ return None
+
+ def _CreateSuitesFromManifest(self, manifest, build_path, class_name=None,
+ java_package_name=None):
+ """Creates TestSuites from a AndroidManifest.
+
+ Args:
+ manifest: the AndroidManifest
+ build_path: the build path to use for test
+ class_name: optionally, the class filter for the suite
+ java_package_name: optionally, the java package filter for the suite
+
+ Returns:
+ the list of tests created
+ """
+ tests = []
+ for instr_name in manifest.GetInstrumentationNames():
+ pkg_name = manifest.GetPackageName()
+ logger.SilentLog('Found instrumentation %s/%s' % (pkg_name, instr_name))
+ suite = instrumentation_test.InstrumentationTestSuite()
+ suite.SetPackageName(pkg_name)
+ suite.SetBuildPath(build_path)
+ suite.SetRunnerName(instr_name)
+ suite.SetName(pkg_name)
+ suite.SetClassName(class_name)
+ suite.SetJavaPackageFilter(java_package_name)
+ # this is a bit of a hack, assume if 'com.android.cts' is in
+ # package name, this is a cts test
+ # this logic can be removed altogether when cts tests no longer require
+ # custom build steps
+ suite.SetCts(suite.GetPackageName().startswith('com.android.cts'))
+ tests.append(suite)
+ return tests
+
diff --git a/testrunner/test_defs/xml_suite_helper.py b/testrunner/test_defs/xml_suite_helper.py
new file mode 100644
index 0000000..c2ed1dd
--- /dev/null
+++ b/testrunner/test_defs/xml_suite_helper.py
@@ -0,0 +1,152 @@
+#!/usr/bin/python2.4
+#
+#
+# Copyright 2009, The Android Open Source 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.
+
+"""Utility to parse suite info from xml."""
+
+# Python imports
+import xml.dom.minidom
+import xml.parsers
+
+# local imports
+import errors
+import logger
+import host_test
+import instrumentation_test
+import native_test
+
+
+class XmlSuiteParser(object):
+ """Parses XML attributes common to all TestSuite's."""
+
+ # common attributes
+ _NAME_ATTR = 'name'
+ _BUILD_ATTR = 'build_path'
+ _CONTINUOUS_ATTR = 'continuous'
+ _CTS_ATTR = 'cts'
+ _DESCRIPTION_ATTR = 'description'
+ _EXTRA_BUILD_ARGS_ATTR = 'extra_build_args'
+
+ def Parse(self, element):
+ """Populates common suite attributes from given suite xml element.
+
+ Args:
+ element: xml node to parse
+ Raises:
+ ParseError if a required attribute is missing.
+ Returns:
+ parsed test suite or None
+ """
+ parser = None
+ if element.nodeName == InstrumentationParser.TAG_NAME:
+ parser = InstrumentationParser()
+ elif element.nodeName == NativeParser.TAG_NAME:
+ parser = NativeParser()
+ elif element.nodeName == HostParser.TAG_NAME:
+ parser = HostParser()
+ else:
+ logger.Log('Unrecognized tag %s found' % element.nodeName)
+ return None
+ test_suite = parser.Parse(element)
+ return test_suite
+
+ def _ParseCommonAttributes(self, suite_element, test_suite):
+ test_suite.SetName(self._ParseAttribute(suite_element, self._NAME_ATTR,
+ True))
+ test_suite.SetBuildPath(self._ParseAttribute(suite_element,
+ self._BUILD_ATTR, True))
+ test_suite.SetContinuous(self._ParseAttribute(suite_element,
+ self._CONTINUOUS_ATTR,
+ False, default_value=False))
+ test_suite.SetCts(self._ParseAttribute(suite_element, self._CTS_ATTR, False,
+ default_value=False))
+ test_suite.SetDescription(self._ParseAttribute(suite_element,
+ self._DESCRIPTION_ATTR,
+ False,
+ default_value=''))
+ test_suite.SetExtraBuildArgs(self._ParseAttribute(
+ suite_element, self._EXTRA_BUILD_ARGS_ATTR, False, default_value=''))
+
+ def _ParseAttribute(self, suite_element, attribute_name, mandatory,
+ default_value=None):
+ if suite_element.hasAttribute(attribute_name):
+ value = suite_element.getAttribute(attribute_name)
+ elif mandatory:
+ error_msg = ('Could not find attribute %s in %s' %
+ (attribute_name, self.TAG_NAME))
+ raise errors.ParseError(msg=error_msg)
+ else:
+ value = default_value
+ return value
+
+
+class InstrumentationParser(XmlSuiteParser):
+ """Parses instrumentation suite attributes from xml."""
+
+ # for legacy reasons, the xml tag name for java (device) tests is 'test'
+ TAG_NAME = 'test'
+
+ _PKG_ATTR = 'package'
+ _RUNNER_ATTR = 'runner'
+ _CLASS_ATTR = 'class'
+ _TARGET_ATTR = 'coverage_target'
+
+ def Parse(self, suite_element):
+ """Creates suite and populate with data from xml element."""
+ suite = instrumentation_test.InstrumentationTestSuite()
+ XmlSuiteParser._ParseCommonAttributes(self, suite_element, suite)
+ suite.SetPackageName(self._ParseAttribute(suite_element, self._PKG_ATTR,
+ True))
+ suite.SetRunnerName(self._ParseAttribute(
+ suite_element, self._RUNNER_ATTR, False,
+ instrumentation_test.InstrumentationTestSuite.DEFAULT_RUNNER))
+ suite.SetClassName(self._ParseAttribute(suite_element, self._CLASS_ATTR,
+ False))
+ suite.SetTargetName(self._ParseAttribute(suite_element, self._TARGET_ATTR,
+ False))
+ return suite
+
+
+class NativeParser(XmlSuiteParser):
+ """Parses native suite attributes from xml."""
+
+ TAG_NAME = 'test-native'
+
+ def Parse(self, suite_element):
+ """Creates suite and populate with data from xml element."""
+ suite = native_test.NativeTestSuite()
+ XmlSuiteParser._ParseCommonAttributes(self, suite_element, suite)
+ return suite
+
+
+class HostParser(XmlSuiteParser):
+ """Parses host suite attributes from xml."""
+
+ TAG_NAME = 'test-host'
+
+ _CLASS_ATTR = 'class'
+ # TODO: consider obsoleting in favor of parsing the Android.mk to find the
+ # jar name
+ _JAR_ATTR = 'jar_name'
+
+ def Parse(self, suite_element):
+ """Creates suite and populate with data from xml element."""
+ suite = host_test.HostTestSuite()
+ XmlSuiteParser._ParseCommonAttributes(self, suite_element, suite)
+ suite.SetClassName(self._ParseAttribute(suite_element, self._CLASS_ATTR,
+ True))
+ suite.SetJarName(self._ParseAttribute(suite_element, self._JAR_ATTR, True))
+ return suite
diff --git a/testrunner/tests/AndroidManifest.xml b/testrunner/tests/AndroidManifest.xml
new file mode 100644
index 0000000..e867f73
--- /dev/null
+++ b/testrunner/tests/AndroidManifest.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source 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.
+-->
+
+<!-- Sample manifest file used for unit testing -->
+
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="com.example.android.tests">
+
+ <application>
+ <uses-library android:name="android.test.runner" />
+ </application>
+
+ <instrumentation android:name="android.test.InstrumentationTestRunner"
+ android:targetPackage="com.example.android"
+ android:label="Tests"/>
+
+</manifest>
diff --git a/testrunner/tests/android_manifest_tests.py b/testrunner/tests/android_manifest_tests.py
new file mode 100755
index 0000000..2817726
--- /dev/null
+++ b/testrunner/tests/android_manifest_tests.py
@@ -0,0 +1,42 @@
+#!/usr/bin/python2.4
+#
+#
+# Copyright 2009, The Android Open Source 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.
+
+import sys
+import unittest
+sys.path.append('../..')
+
+from testrunner import android_manifest
+
+
+class AndroidManifestTest(unittest.TestCase):
+ """Unit tests for AndroidManifest."""
+
+ def setUp(self):
+ """Create android_mainfest for testing from sample file."""
+ self._manifest = android_manifest.AndroidManifest(app_path='.')
+
+ def testGetPackageName(self):
+ self.assertEquals('com.example.android.tests',
+ self._manifest.GetPackageName())
+
+ def testGetInstrumentationNames(self):
+ self.assertEquals(['android.test.InstrumentationTestRunner'],
+ self._manifest.GetInstrumentationNames())
+
+
+if __name__ == '__main__':
+ unittest.main()
diff --git a/tools/zoneinfo/generate b/tools/zoneinfo/generate
index 0b087a8..dbb7610 100755
--- a/tools/zoneinfo/generate
+++ b/tools/zoneinfo/generate
@@ -1,6 +1,6 @@
#!/bin/sh
-version=tzdata2008h
+version=tzdata2009s
mkdir data
@@ -32,4 +32,6 @@
java ZoneCompactor setup data
-cp zoneinfo.dat zoneinfo.idx ../../../data/zoneinfo
+cp zoneinfo.dat zoneinfo.idx ../../../bionic/libc/zoneinfo
+
+echo $version | sed 's/tzdata//' > ../../../bionic/libc/zoneinfo/zoneinfo.version
diff --git a/tools/zoneinfo/tzdata2008h/africa b/tools/zoneinfo/tzdata2008h/africa
deleted file mode 100644
index 34a62b9..0000000
--- a/tools/zoneinfo/tzdata2008h/africa
+++ /dev/null
@@ -1,840 +0,0 @@
-# @(#)africa 8.17
-# <pre>
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@elsie.nci.nih.gov for general use in the future).
-
-# From Paul Eggert (2006-03-22):
-#
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually. Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1990, and IATA SSIM is the source for entries afterwards.
-#
-# Another source occasionally used is Edward W. Whitman, World Time Differences,
-# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
-# I found in the UCLA library.
-#
-# A reliable and entertaining source about time zones is
-# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
-#
-# Previous editions of this database used WAT, CAT, SAT, and EAT
-# for +0:00 through +3:00, respectively,
-# but Mark R V Murray reports that
-# `SAST' is the official abbreviation for +2:00 in the country of South Africa,
-# `CAT' is commonly used for +2:00 in countries north of South Africa, and
-# `WAT' is probably the best name for +1:00, as the common phrase for
-# the area that includes Nigeria is ``West Africa''.
-# He has heard of ``Western Sahara Time'' for +0:00 but can find no reference.
-#
-# To make things confusing, `WAT' seems to have been used for -1:00 long ago;
-# I'd guess that this was because people needed _some_ name for -1:00,
-# and at the time, far west Africa was the only major land area in -1:00.
-# This usage is now obsolete, as the last use of -1:00 on the African
-# mainland seems to have been 1976 in Western Sahara.
-#
-# To summarize, the following abbreviations seem to have some currency:
-# -1:00 WAT West Africa Time (no longer used)
-# 0:00 GMT Greenwich Mean Time
-# 2:00 CAT Central Africa Time
-# 2:00 SAST South Africa Standard Time
-# and Murray suggests the following abbreviation:
-# 1:00 WAT West Africa Time
-# I realize that this leads to `WAT' being used for both -1:00 and 1:00
-# for times before 1976, but this is the best I can think of
-# until we get more information.
-#
-# I invented the following abbreviations; corrections are welcome!
-# 2:00 WAST West Africa Summer Time
-# 2:30 BEAT British East Africa Time (no longer used)
-# 2:44:45 BEAUT British East Africa Unified Time (no longer used)
-# 3:00 CAST Central Africa Summer Time (no longer used)
-# 3:00 SAST South Africa Summer Time (no longer used)
-# 3:00 EAT East Africa Time
-# 4:00 EAST East Africa Summer Time (no longer used)
-
-# Algeria
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Algeria 1916 only - Jun 14 23:00s 1:00 S
-Rule Algeria 1916 1919 - Oct Sun>=1 23:00s 0 -
-Rule Algeria 1917 only - Mar 24 23:00s 1:00 S
-Rule Algeria 1918 only - Mar 9 23:00s 1:00 S
-Rule Algeria 1919 only - Mar 1 23:00s 1:00 S
-Rule Algeria 1920 only - Feb 14 23:00s 1:00 S
-Rule Algeria 1920 only - Oct 23 23:00s 0 -
-Rule Algeria 1921 only - Mar 14 23:00s 1:00 S
-Rule Algeria 1921 only - Jun 21 23:00s 0 -
-Rule Algeria 1939 only - Sep 11 23:00s 1:00 S
-Rule Algeria 1939 only - Nov 19 1:00 0 -
-Rule Algeria 1944 1945 - Apr Mon>=1 2:00 1:00 S
-Rule Algeria 1944 only - Oct 8 2:00 0 -
-Rule Algeria 1945 only - Sep 16 1:00 0 -
-Rule Algeria 1971 only - Apr 25 23:00s 1:00 S
-Rule Algeria 1971 only - Sep 26 23:00s 0 -
-Rule Algeria 1977 only - May 6 0:00 1:00 S
-Rule Algeria 1977 only - Oct 21 0:00 0 -
-Rule Algeria 1978 only - Mar 24 1:00 1:00 S
-Rule Algeria 1978 only - Sep 22 3:00 0 -
-Rule Algeria 1980 only - Apr 25 0:00 1:00 S
-Rule Algeria 1980 only - Oct 31 2:00 0 -
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
-# more precise 0:09:21.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01
- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
- 0:00 Algeria WE%sT 1940 Feb 25 2:00
- 1:00 Algeria CE%sT 1946 Oct 7
- 0:00 - WET 1956 Jan 29
- 1:00 - CET 1963 Apr 14
- 0:00 Algeria WE%sT 1977 Oct 21
- 1:00 Algeria CE%sT 1979 Oct 26
- 0:00 Algeria WE%sT 1981 May
- 1:00 - CET
-
-# Angola
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Luanda 0:52:56 - LMT 1892
- 0:52:04 - AOT 1911 May 26 # Angola Time
- 1:00 - WAT
-
-# Benin
-# Whitman says they switched to 1:00 in 1946, not 1934;
-# go with Shanks & Pottenger.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Porto-Novo 0:10:28 - LMT 1912
- 0:00 - GMT 1934 Feb 26
- 1:00 - WAT
-
-# Botswana
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Gaborone 1:43:40 - LMT 1885
- 2:00 - CAT 1943 Sep 19 2:00
- 2:00 1:00 CAST 1944 Mar 19 2:00
- 2:00 - CAT
-
-# Burkina Faso
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Ouagadougou -0:06:04 - LMT 1912
- 0:00 - GMT
-
-# Burundi
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Bujumbura 1:57:28 - LMT 1890
- 2:00 - CAT
-
-# Cameroon
-# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Douala 0:38:48 - LMT 1912
- 1:00 - WAT
-
-# Cape Verde
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Atlantic/Cape_Verde -1:34:04 - LMT 1907 # Praia
- -2:00 - CVT 1942 Sep
- -2:00 1:00 CVST 1945 Oct 15
- -2:00 - CVT 1975 Nov 25 2:00
- -1:00 - CVT
-
-# Central African Republic
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Bangui 1:14:20 - LMT 1912
- 1:00 - WAT
-
-# Chad
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Ndjamena 1:00:12 - LMT 1912
- 1:00 - WAT 1979 Oct 14
- 1:00 1:00 WAST 1980 Mar 8
- 1:00 - WAT
-
-# Comoros
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Indian/Comoro 2:53:04 - LMT 1911 Jul # Moroni, Gran Comoro
- 3:00 - EAT
-
-# Democratic Republic of Congo
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Kinshasa 1:01:12 - LMT 1897 Nov 9
- 1:00 - WAT
-Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9
- 2:00 - CAT
-
-# Republic of the Congo
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Brazzaville 1:01:08 - LMT 1912
- 1:00 - WAT
-
-# Cote D'Ivoire
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Abidjan -0:16:08 - LMT 1912
- 0:00 - GMT
-
-# Djibouti
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Djibouti 2:52:36 - LMT 1911 Jul
- 3:00 - EAT
-
-###############################################################################
-
-# Egypt
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Egypt 1940 only - Jul 15 0:00 1:00 S
-Rule Egypt 1940 only - Oct 1 0:00 0 -
-Rule Egypt 1941 only - Apr 15 0:00 1:00 S
-Rule Egypt 1941 only - Sep 16 0:00 0 -
-Rule Egypt 1942 1944 - Apr 1 0:00 1:00 S
-Rule Egypt 1942 only - Oct 27 0:00 0 -
-Rule Egypt 1943 1945 - Nov 1 0:00 0 -
-Rule Egypt 1945 only - Apr 16 0:00 1:00 S
-Rule Egypt 1957 only - May 10 0:00 1:00 S
-Rule Egypt 1957 1958 - Oct 1 0:00 0 -
-Rule Egypt 1958 only - May 1 0:00 1:00 S
-Rule Egypt 1959 1981 - May 1 1:00 1:00 S
-Rule Egypt 1959 1965 - Sep 30 3:00 0 -
-Rule Egypt 1966 1994 - Oct 1 3:00 0 -
-Rule Egypt 1982 only - Jul 25 1:00 1:00 S
-Rule Egypt 1983 only - Jul 12 1:00 1:00 S
-Rule Egypt 1984 1988 - May 1 1:00 1:00 S
-Rule Egypt 1989 only - May 6 1:00 1:00 S
-Rule Egypt 1990 1994 - May 1 1:00 1:00 S
-# IATA (after 1990) says transitions are at 0:00.
-# Go with IATA starting in 1995, except correct 1995 entry from 09-30 to 09-29.
-Rule Egypt 1995 max - Apr lastFri 0:00s 1:00 S
-Rule Egypt 1995 2005 - Sep lastThu 23:00s 0 -
-# From Steffen Thorsen (2006-09-19):
-# The Egyptian Gazette, issue 41,090 (2006-09-18), page 1, reports:
-# Egypt will turn back clocks by one hour at the midnight of Thursday
-# after observing the daylight saving time since May.
-# http://news.gom.com.eg/gazette/pdf/2006/09/18/01.pdf
-Rule Egypt 2006 only - Sep 21 23:00s 0 -
-# From Dirk Losch (2007-08-14):
-# I received a mail from an airline which says that the daylight
-# saving time in Egypt will end in the night of 2007-09-06 to 2007-09-07.
-# From Jesper Norgaard Welen (2007-08-15): [The following agree:]
-# http://www.nentjes.info/Bill/bill5.htm
-# http://www.timeanddate.com/worldclock/city.html?n=53
-# From Steffen Thorsen (2007-09-04): The official information...:
-# http://www.sis.gov.eg/En/EgyptOnline/Miscellaneous/000002/0207000000000000001580.htm
-Rule Egypt 2007 only - Sep Thu>=1 23:00s 0 -
-# From Abdelrahman Hassan (2007-09-06):
-# Due to the Hijri (lunar Islamic calendar) year being 11 days shorter
-# than the year of the Gregorian calendar, Ramadan shifts earlier each
-# year. This year it will be observed September 13 (September is quite
-# hot in Egypt), and the idea is to make fasting easier for workers by
-# shifting business hours one hour out of daytime heat. Consequently,
-# unless discontinued, next DST may end Thursday 28 August 2008.
-# From Paul Eggert (2007-08-17):
-# For lack of better info, assume the new rule is last Thursday in August.
-Rule Egypt 2008 max - Aug lastThu 23:00s 0 -
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Cairo 2:05:00 - LMT 1900 Oct
- 2:00 Egypt EE%sT
-
-# Equatorial Guinea
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Malabo 0:35:08 - LMT 1912
- 0:00 - GMT 1963 Dec 15
- 1:00 - WAT
-
-# Eritrea
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Asmara 2:35:32 - LMT 1870
- 2:35:32 - AMT 1890 # Asmara Mean Time
- 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
- 3:00 - EAT
-
-# Ethiopia
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time zones
-# between 1870 and 1890, and that they merged to 38E50 (2:35:20) in 1890.
-# We'll guess that 38E50 is for Adis Dera.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Addis_Ababa 2:34:48 - LMT 1870
- 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
- 3:00 - EAT
-
-# Gabon
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Libreville 0:37:48 - LMT 1912
- 1:00 - WAT
-
-# Gambia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Banjul -1:06:36 - LMT 1912
- -1:06:36 - BMT 1935 # Banjul Mean Time
- -1:00 - WAT 1964
- 0:00 - GMT
-
-# Ghana
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# Whitman says DST was observed from 1931 to ``the present'';
-# go with Shanks & Pottenger.
-Rule Ghana 1936 1942 - Sep 1 0:00 0:20 GHST
-Rule Ghana 1936 1942 - Dec 31 0:00 0 GMT
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Accra -0:00:52 - LMT 1918
- 0:00 Ghana %s
-
-# Guinea
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Conakry -0:54:52 - LMT 1912
- 0:00 - GMT 1934 Feb 26
- -1:00 - WAT 1960
- 0:00 - GMT
-
-# Guinea-Bissau
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Bissau -1:02:20 - LMT 1911 May 26
- -1:00 - WAT 1975
- 0:00 - GMT
-
-# Kenya
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Nairobi 2:27:16 - LMT 1928 Jul
- 3:00 - EAT 1930
- 2:30 - BEAT 1940
- 2:44:45 - BEAUT 1960
- 3:00 - EAT
-
-# Lesotho
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Maseru 1:50:00 - LMT 1903 Mar
- 2:00 - SAST 1943 Sep 19 2:00
- 2:00 1:00 SAST 1944 Mar 19 2:00
- 2:00 - SAST
-
-# Liberia
-# From Paul Eggert (2006-03-22):
-# In 1972 Liberia was the last country to switch
-# from a UTC offset that was not a multiple of 15 or 20 minutes.
-# Howse reports that it was in honor of their president's birthday.
-# Shank & Pottenger report the date as May 1, whereas Howse reports Jan;
-# go with Shanks & Pottenger.
-# For Liberia before 1972, Shanks & Pottenger report -0:44, whereas Howse and
-# Whitman each report -0:44:30; go with the more precise figure.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Monrovia -0:43:08 - LMT 1882
- -0:43:08 - MMT 1919 Mar # Monrovia Mean Time
- -0:44:30 - LRT 1972 May # Liberia Time
- 0:00 - GMT
-
-###############################################################################
-
-# Libya
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Libya 1951 only - Oct 14 2:00 1:00 S
-Rule Libya 1952 only - Jan 1 0:00 0 -
-Rule Libya 1953 only - Oct 9 2:00 1:00 S
-Rule Libya 1954 only - Jan 1 0:00 0 -
-Rule Libya 1955 only - Sep 30 0:00 1:00 S
-Rule Libya 1956 only - Jan 1 0:00 0 -
-Rule Libya 1982 1984 - Apr 1 0:00 1:00 S
-Rule Libya 1982 1985 - Oct 1 0:00 0 -
-Rule Libya 1985 only - Apr 6 0:00 1:00 S
-Rule Libya 1986 only - Apr 4 0:00 1:00 S
-Rule Libya 1986 only - Oct 3 0:00 0 -
-Rule Libya 1987 1989 - Apr 1 0:00 1:00 S
-Rule Libya 1987 1989 - Oct 1 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Tripoli 0:52:44 - LMT 1920
- 1:00 Libya CE%sT 1959
- 2:00 - EET 1982
- 1:00 Libya CE%sT 1990 May 4
-# The following entries are from Shanks & Pottenger;
-# the IATA SSIM data contain some obvious errors.
- 2:00 - EET 1996 Sep 30
- 1:00 - CET 1997 Apr 4
- 1:00 1:00 CEST 1997 Oct 4
- 2:00 - EET
-
-# Madagascar
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Indian/Antananarivo 3:10:04 - LMT 1911 Jul
- 3:00 - EAT 1954 Feb 27 23:00s
- 3:00 1:00 EAST 1954 May 29 23:00s
- 3:00 - EAT
-
-# Malawi
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar
- 2:00 - CAT
-
-# Mali
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Bamako -0:32:00 - LMT 1912
- 0:00 - GMT 1934 Feb 26
- -1:00 - WAT 1960 Jun 20
- 0:00 - GMT
-
-# Mauritania
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Nouakchott -1:03:48 - LMT 1912
- 0:00 - GMT 1934 Feb 26
- -1:00 - WAT 1960 Nov 28
- 0:00 - GMT
-
-# Mauritius
-
-# From Steffen Thorsen (2008-06-25):
-# Mauritius plans to observe DST from 2008-11-01 to 2009-03-31 on a trial
-# basis....
-# It seems that Mauritius observed daylight saving time from 1982-10-10 to
-# 1983-03-20 as well, but that was not successful....
-# http://www.timeanddate.com/news/time/mauritius-daylight-saving-time.html
-
-# From Alex Krivenyshev (2008-06-25):
-# http://economicdevelopment.gov.mu/portal/site/Mainhomepage/menuitem.a42b24128104d9845dabddd154508a0c/?content_id=0a7cee8b5d69a110VgnVCM1000000a04a8c0RCRD
-
-# From Arthur David Olson (2008-06-30):
-# The www.timeanddate.com article cited by Steffen Thorsen notes that "A
-# final decision has yet to be made on the times that daylight saving
-# would begin and end on these dates." As a place holder, use midnight.
-
-# From Paul Eggert (2008-06-30):
-# Follow Thorsen on DST in 1982/1983, instead of Shanks & Pottenger.
-
-# From Steffen Thorsen (2008-07-10):
-# According to
-# <a href="http://www.lexpress.mu/display_article.php?news_id=111216">
-# http://www.lexpress.mu/display_article.php?news_id=111216
-# </a>
-# (in French), Mauritius will start and end their DST a few days earlier
-# than previously announced (2008-11-01 to 2009-03-31). The new start
-# date is 2008-10-26 at 02:00 and the new end date is 2009-03-27 (no time
-# given, but it is probably at either 2 or 3 wall clock time).
-#
-# A little strange though, since the article says that they moved the date
-# to align itself with Europe and USA which also change time on that date,
-# but that means they have not paid attention to what happened in
-# USA/Canada last year (DST ends first Sunday in November). I also wonder
-# why that they end on a Friday, instead of aligning with Europe which
-# changes two days later.
-
-# From Alex Krivenyshev (2008-07-11):
-# Seems that English language article "The revival of daylight saving
-# time: Energy conservation?"-# No. 16578 (07/11/2008) was originally
-# published on Monday, June 30, 2008...
-#
-# I guess that article in French "Le gouvernement avance l'introduction
-# de l'heure d'ete" stating that DST in Mauritius starting on October 26
-# and ending on March 27, 2009 is the most recent one.
-# ...
-# <a href="http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html">
-# http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html
-# </a>
-
-# From Riad M. Hossen Ally (2008-08-03):
-# The Government of Mauritius weblink
-# <a href="http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=3D4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD">
-# http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=3D4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD
-# </a>
-# Cabinet Decision of July 18th, 2008 states as follows:
-#
-# 4. ...Cabinet has agreed to the introduction into the National Assembly
-# of the Time Bill which provides for the introduction of summer time in
-# Mauritius. The summer time period which will be of one hour ahead of
-# the standard time, will be aligned with that in Europe and the United
-# States of America. It will start at two o'clock in the morning on the
-# last Sunday of October and will end at two o'clock in the morning on
-# the last Sunday of March the following year. The summer time for the
-# year 2008 - 2009 will, therefore, be effective as from 26 October 2008
-# and end on 29 March 2009.
-
-# From Ed Maste (2008-10-07):
-# THE TIME BILL (No. XXVII of 2008) Explanatory Memorandum states the
-# beginning / ending of summer time is 2 o'clock standard time in the
-# morning of the last Sunday of October / last Sunday of March.
-# <a href="http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf">
-# http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf
-# </a>
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Mauritius 1982 only - Oct 10 0:00 1:00 S
-Rule Mauritius 1983 only - Mar 21 0:00 0 -
-Rule Mauritius 2008 max - Oct lastSun 2:00s 1:00 S
-Rule Mauritius 2009 max - Mar lastSun 2:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis
- 4:00 Mauritius MU%sT # Mauritius Time
-# Agalega Is, Rodriguez
-# no information; probably like Indian/Mauritius
-
-# Mayotte
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
- 3:00 - EAT
-
-# Morocco
-# See the `europe' file for Spanish Morocco (Africa/Ceuta).
-
-# From Alex Krivenyshev (2008-05-09):
-# Here is an article that Morocco plan to introduce Daylight Saving Time between
-# 1 June, 2008 and 27 September, 2008.
-#
-# "... Morocco is to save energy by adjusting its clock during summer so it will
-# be one hour ahead of GMT between 1 June and 27 September, according to
-# Communication Minister and Gov ernment Spokesman, Khalid Naciri...."
-#
-# <a href="http://www.worldtimezone.net/dst_news/dst_news_morocco01.html">
-# http://www.worldtimezone.net/dst_news/dst_news_morocco01.html
-# </a>
-# OR
-# <a href="http://en.afrik.com/news11892.html">
-# http://en.afrik.com/news11892.html
-# </a>
-
-# From Alex Krivenyshev (2008-05-09):
-# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe Presse:
-# <a href="http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view">
-# http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view
-# </a>
-#
-# Morocco shifts to daylight time on June 1st through September 27, Govt.
-# spokesman.
-
-# From Patrice Scattolin (2008-05-09):
-# According to this article:
-# <a href="http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html">
-# http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
-# </a>
-# (and republished here:
-# <a href="http://www.actu.ma/heure-dete-comment_i127896_0.html">
-# http://www.actu.ma/heure-dete-comment_i127896_0.html
-# </a>
-# )
-# the changes occurs at midnight:
-#
-# saturday night may 31st at midnight (which in french is to be
-# intrepreted as the night between saturday and sunday)
-# sunday night the 28th at midnight
-#
-# Seeing that the 28th is monday, I am guessing that she intends to say
-# the midnight of the 28th which is the midnight between sunday and
-# monday, which jives with other sources that say that it's inclusive
-# june1st to sept 27th.
-#
-# The decision was taken by decree *2-08-224 *but I can't find the decree
-# published on the web.
-#
-# It's also confirmed here:
-# <a href="http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm">
-# http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm
-# </a>
-# on a government portal as being between june 1st and sept 27th (not yet
-# posted in english).
-#
-# The following google query will generate many relevant hits:
-# <a href="http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search">
-# http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
-# </a>
-
-# From Alex Krivenyshev (2008-05-09):
-# Is Western Sahara (part which administrated by Morocco) going to follow
-# Morocco DST changes? Any information? What about other part of
-# Western Sahara - under administration of POLISARIO Front (also named
-# SADR Saharawi Arab Democratic Republic)?
-
-# From Arthur David Olson (2008-05-09):
-# XXX--guess that it is only Morocco for now; guess only 2008 for now.
-
-# From Steffen Thorsen (2008-08-27):
-# Morocco will change the clocks back on the midnight between August 31
-# and September 1. They originally planned to observe DST to near the end
-# of September:
-#
-# One article about it (in French):
-# <a href="http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default">
-# http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default
-# </a>
-#
-# We have some further details posted here:
-# <a href="http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html">
-# http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
-# </a>
-# RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-
-Rule Morocco 1939 only - Sep 12 0:00 1:00 S
-Rule Morocco 1939 only - Nov 19 0:00 0 -
-Rule Morocco 1940 only - Feb 25 0:00 1:00 S
-Rule Morocco 1945 only - Nov 18 0:00 0 -
-Rule Morocco 1950 only - Jun 11 0:00 1:00 S
-Rule Morocco 1950 only - Oct 29 0:00 0 -
-Rule Morocco 1967 only - Jun 3 12:00 1:00 S
-Rule Morocco 1967 only - Oct 1 0:00 0 -
-Rule Morocco 1974 only - Jun 24 0:00 1:00 S
-Rule Morocco 1974 only - Sep 1 0:00 0 -
-Rule Morocco 1976 1977 - May 1 0:00 1:00 S
-Rule Morocco 1976 only - Aug 1 0:00 0 -
-Rule Morocco 1977 only - Sep 28 0:00 0 -
-Rule Morocco 1978 only - Jun 1 0:00 1:00 S
-Rule Morocco 1978 only - Aug 4 0:00 0 -
-Rule Morocco 2008 only - Jun 1 0:00 1:00 S
-Rule Morocco 2008 only - Sep 1 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Casablanca -0:30:20 - LMT 1913 Oct 26
- 0:00 Morocco WE%sT 1984 Mar 16
- 1:00 - CET 1986
- 0:00 Morocco WE%sT
-# Western Sahara
-Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan
- -1:00 - WAT 1976 Apr 14
- 0:00 - WET
-
-# Mozambique
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Maputo 2:10:20 - LMT 1903 Mar
- 2:00 - CAT
-
-# Namibia
-# The 1994-04-03 transition is from Shanks & Pottenger.
-# Shanks & Pottenger report no DST after 1998-04; go with IATA.
-
-# From Petronella Sibeene (2007-03-30) in
-# <http://allafrica.com/stories/200703300178.html>:
-# While the entire country changes its time, Katima Mulilo and other
-# settlements in Caprivi unofficially will not because the sun there
-# rises and sets earlier compared to other regions. Chief of
-# Forecasting Riaan van Zyl explained that the far eastern parts of
-# the country are close to 40 minutes earlier in sunrise than the rest
-# of the country.
-#
-# From Paul Eggert (2007-03-31):
-# Apparently the Caprivi Strip informally observes Botswana time, but
-# we have no details. In the meantime people there can use Africa/Gaborone.
-
-# RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Namibia 1994 max - Sep Sun>=1 2:00 1:00 S
-Rule Namibia 1995 max - Apr Sun>=1 2:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Windhoek 1:08:24 - LMT 1892 Feb 8
- 1:30 - SWAT 1903 Mar # SW Africa Time
- 2:00 - SAST 1942 Sep 20 2:00
- 2:00 1:00 SAST 1943 Mar 21 2:00
- 2:00 - SAST 1990 Mar 21 # independence
- 2:00 - CAT 1994 Apr 3
- 1:00 Namibia WA%sT
-
-# Niger
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Niamey 0:08:28 - LMT 1912
- -1:00 - WAT 1934 Feb 26
- 0:00 - GMT 1960
- 1:00 - WAT
-
-# Nigeria
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Lagos 0:13:36 - LMT 1919 Sep
- 1:00 - WAT
-
-# Reunion
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
- 4:00 - RET # Reunion Time
-#
-# Scattered Islands (Iles Eparses) administered from Reunion are as follows.
-# The following information about them is taken from
-# Iles Eparses (www.outre-mer.gouv.fr/domtom/ile.htm, 1997-07-22, in French;
-# no longer available as of 1999-08-17).
-# We have no info about their time zone histories.
-#
-# Bassas da India - uninhabited
-# Europa Island - inhabited from 1905 to 1910 by two families
-# Glorioso Is - inhabited until at least 1958
-# Juan de Nova - uninhabited
-# Tromelin - inhabited until at least 1958
-
-# Rwanda
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Kigali 2:00:16 - LMT 1935 Jun
- 2:00 - CAT
-
-# St Helena
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown
- -0:22:48 - JMT 1951 # Jamestown Mean Time
- 0:00 - GMT
-# The other parts of the St Helena territory are similar:
-# Tristan da Cunha: on GMT, say Whitman and the CIA
-# Ascension: on GMT, says usno1995 and the CIA
-# Gough (scientific station since 1955; sealers wintered previously):
-# on GMT, says the CIA
-# Inaccessible, Nightingale: no information, but probably GMT
-
-# Sao Tome and Principe
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Sao_Tome 0:26:56 - LMT 1884
- -0:36:32 - LMT 1912 # Lisbon Mean Time
- 0:00 - GMT
-
-# Senegal
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Dakar -1:09:44 - LMT 1912
- -1:00 - WAT 1941 Jun
- 0:00 - GMT
-
-# Seychelles
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria
- 4:00 - SCT # Seychelles Time
-# From Paul Eggert (2001-05-30):
-# Aldabra, Farquhar, and Desroches, originally dependencies of the
-# Seychelles, were transferred to the British Indian Ocean Territory
-# in 1965 and returned to Seychelles control in 1976. We don't know
-# whether this affected their time zone, so omit this for now.
-# Possibly the islands were uninhabited.
-
-# Sierra Leone
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# Whitman gives Mar 31 - Aug 31 for 1931 on; go with Shanks & Pottenger.
-Rule SL 1935 1942 - Jun 1 0:00 0:40 SLST
-Rule SL 1935 1942 - Oct 1 0:00 0 WAT
-Rule SL 1957 1962 - Jun 1 0:00 1:00 SLST
-Rule SL 1957 1962 - Sep 1 0:00 0 GMT
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Freetown -0:53:00 - LMT 1882
- -0:53:00 - FMT 1913 Jun # Freetown Mean Time
- -1:00 SL %s 1957
- 0:00 SL %s
-
-# Somalia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov
- 3:00 - EAT 1931
- 2:30 - BEAT 1957
- 3:00 - EAT
-
-# South Africa
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule SA 1942 1943 - Sep Sun>=15 2:00 1:00 -
-Rule SA 1943 1944 - Mar Sun>=15 2:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Johannesburg 1:52:00 - LMT 1892 Feb 8
- 1:30 - SAST 1903 Mar
- 2:00 SA SAST
-# Marion and Prince Edward Is
-# scientific station since 1947
-# no information
-
-# Sudan
-#
-# From <a href="http://www.sunanews.net/sn13jane.html">
-# Sudan News Agency (2000-01-13)
-# </a>, also reported by Michael De Beukelaer-Dossche via Steffen Thorsen:
-# Clocks will be moved ahead for 60 minutes all over the Sudan as of noon
-# Saturday.... This was announced Thursday by Caretaker State Minister for
-# Manpower Abdul-Rahman Nur-Eddin.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Sudan 1970 only - May 1 0:00 1:00 S
-Rule Sudan 1970 1985 - Oct 15 0:00 0 -
-Rule Sudan 1971 only - Apr 30 0:00 1:00 S
-Rule Sudan 1972 1985 - Apr lastSun 0:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Khartoum 2:10:08 - LMT 1931
- 2:00 Sudan CA%sT 2000 Jan 15 12:00
- 3:00 - EAT
-
-# Swaziland
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Mbabane 2:04:24 - LMT 1903 Mar
- 2:00 - SAST
-
-# Tanzania
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931
- 3:00 - EAT 1948
- 2:44:45 - BEAUT 1961
- 3:00 - EAT
-
-# Togo
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Lome 0:04:52 - LMT 1893
- 0:00 - GMT
-
-# Tunisia
-
-# From Gwillim Law (2005-04-30):
-# My correspondent, Risto Nykanen, has alerted me to another adoption of DST,
-# this time in Tunisia. According to Yahoo France News
-# <http://fr.news.yahoo.com/050426/5/4dumk.html>, in a story attributed to AP
-# and dated 2005-04-26, "Tunisia has decided to advance its official time by
-# one hour, starting on Sunday, May 1. Henceforth, Tunisian time will be
-# UTC+2 instead of UTC+1. The change will take place at 23:00 UTC next
-# Saturday." (My translation)
-#
-# From Oscar van Vlijmen (2005-05-02):
-# LaPresse, the first national daily newspaper ...
-# <http://www.lapresse.tn/archives/archives280405/actualites/lheure.html>
-# ... DST for 2005: on: Sun May 1 0h standard time, off: Fri Sept. 30,
-# 1h standard time.
-#
-# From Atef Loukil (2006-03-28):
-# The daylight saving time will be the same each year:
-# Beginning : the last Sunday of March at 02:00
-# Ending : the last Sunday of October at 03:00 ...
-# http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=1188&Itemid=50
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Tunisia 1939 only - Apr 15 23:00s 1:00 S
-Rule Tunisia 1939 only - Nov 18 23:00s 0 -
-Rule Tunisia 1940 only - Feb 25 23:00s 1:00 S
-Rule Tunisia 1941 only - Oct 6 0:00 0 -
-Rule Tunisia 1942 only - Mar 9 0:00 1:00 S
-Rule Tunisia 1942 only - Nov 2 3:00 0 -
-Rule Tunisia 1943 only - Mar 29 2:00 1:00 S
-Rule Tunisia 1943 only - Apr 17 2:00 0 -
-Rule Tunisia 1943 only - Apr 25 2:00 1:00 S
-Rule Tunisia 1943 only - Oct 4 2:00 0 -
-Rule Tunisia 1944 1945 - Apr Mon>=1 2:00 1:00 S
-Rule Tunisia 1944 only - Oct 8 0:00 0 -
-Rule Tunisia 1945 only - Sep 16 0:00 0 -
-Rule Tunisia 1977 only - Apr 30 0:00s 1:00 S
-Rule Tunisia 1977 only - Sep 24 0:00s 0 -
-Rule Tunisia 1978 only - May 1 0:00s 1:00 S
-Rule Tunisia 1978 only - Oct 1 0:00s 0 -
-Rule Tunisia 1988 only - Jun 1 0:00s 1:00 S
-Rule Tunisia 1988 1990 - Sep lastSun 0:00s 0 -
-Rule Tunisia 1989 only - Mar 26 0:00s 1:00 S
-Rule Tunisia 1990 only - May 1 0:00s 1:00 S
-Rule Tunisia 2005 only - May 1 0:00s 1:00 S
-Rule Tunisia 2005 only - Sep 30 1:00s 0 -
-Rule Tunisia 2006 max - Mar lastSun 2:00s 1:00 S
-Rule Tunisia 2006 max - Oct lastSun 2:00s 0 -
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
-# more precise 0:09:21.
-# Shanks & Pottenger say the 1911 switch was on Mar 9; go with Howse's Mar 11.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Tunis 0:40:44 - LMT 1881 May 12
- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
- 1:00 Tunisia CE%sT
-
-# Uganda
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Kampala 2:09:40 - LMT 1928 Jul
- 3:00 - EAT 1930
- 2:30 - BEAT 1948
- 2:44:45 - BEAUT 1957
- 3:00 - EAT
-
-# Zambia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Lusaka 1:53:08 - LMT 1903 Mar
- 2:00 - CAT
-
-# Zimbabwe
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Africa/Harare 2:04:12 - LMT 1903 Mar
- 2:00 - CAT
diff --git a/tools/zoneinfo/tzdata2008h/antarctica b/tools/zoneinfo/tzdata2008h/antarctica
deleted file mode 100644
index ef279cb..0000000
--- a/tools/zoneinfo/tzdata2008h/antarctica
+++ /dev/null
@@ -1,327 +0,0 @@
-# @(#)antarctica 8.4
-# <pre>
-
-# From Paul Eggert (1999-11-15):
-# To keep things manageable, we list only locations occupied year-round; see
-# <a href="http://www.comnap.aq/comnap/comnap.nsf/P/Stations/">
-# COMNAP - Stations and Bases
-# </a>
-# and
-# <a href="http://www.spri.cam.ac.uk/bob/periant.htm">
-# Summary of the Peri-Antarctic Islands (1998-07-23)
-# </a>
-# for information.
-# Unless otherwise specified, we have no time zone information.
-#
-# Except for the French entries,
-# I made up all time zone abbreviations mentioned here; corrections welcome!
-# FORMAT is `zzz' and GMTOFF is 0 for locations while uninhabited.
-
-# These rules are stolen from the `europe' file.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule RussAQ 1981 1984 - Apr 1 0:00 1:00 S
-Rule RussAQ 1981 1983 - Oct 1 0:00 0 -
-Rule RussAQ 1984 1991 - Sep lastSun 2:00s 0 -
-Rule RussAQ 1985 1991 - Mar lastSun 2:00s 1:00 S
-Rule RussAQ 1992 only - Mar lastSat 23:00 1:00 S
-Rule RussAQ 1992 only - Sep lastSat 23:00 0 -
-Rule RussAQ 1993 max - Mar lastSun 2:00s 1:00 S
-Rule RussAQ 1993 1995 - Sep lastSun 2:00s 0 -
-Rule RussAQ 1996 max - Oct lastSun 2:00s 0 -
-
-# These rules are stolen from the `southamerica' file.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule ArgAQ 1964 1966 - Mar 1 0:00 0 -
-Rule ArgAQ 1964 1966 - Oct 15 0:00 1:00 S
-Rule ArgAQ 1967 only - Apr 2 0:00 0 -
-Rule ArgAQ 1967 1968 - Oct Sun>=1 0:00 1:00 S
-Rule ArgAQ 1968 1969 - Apr Sun>=1 0:00 0 -
-Rule ArgAQ 1974 only - Jan 23 0:00 1:00 S
-Rule ArgAQ 1974 only - May 1 0:00 0 -
-Rule ChileAQ 1972 1986 - Mar Sun>=9 3:00u 0 -
-Rule ChileAQ 1974 1987 - Oct Sun>=9 4:00u 1:00 S
-Rule ChileAQ 1987 only - Apr 12 3:00u 0 -
-Rule ChileAQ 1988 1989 - Mar Sun>=9 3:00u 0 -
-Rule ChileAQ 1988 only - Oct Sun>=1 4:00u 1:00 S
-Rule ChileAQ 1989 only - Oct Sun>=9 4:00u 1:00 S
-Rule ChileAQ 1990 only - Mar 18 3:00u 0 -
-Rule ChileAQ 1990 only - Sep 16 4:00u 1:00 S
-Rule ChileAQ 1991 1996 - Mar Sun>=9 3:00u 0 -
-Rule ChileAQ 1991 1997 - Oct Sun>=9 4:00u 1:00 S
-Rule ChileAQ 1997 only - Mar 30 3:00u 0 -
-Rule ChileAQ 1998 only - Mar Sun>=9 3:00u 0 -
-Rule ChileAQ 1998 only - Sep 27 4:00u 1:00 S
-Rule ChileAQ 1999 only - Apr 4 3:00u 0 -
-Rule ChileAQ 1999 max - Oct Sun>=9 4:00u 1:00 S
-Rule ChileAQ 2000 max - Mar Sun>=9 3:00u 0 -
-
-
-# Argentina - year-round bases
-# Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
-# Esperanza, San Martin Land, -6323-05659, since 1952-12-17
-# Jubany, Potter Peninsula, King George Island, -6414-0602320, since 1982-01
-# Marambio, Seymour I, -6414-05637, since 1969-10-29
-# Orcadas, Laurie I, -6016-04444, since 1904-02-22
-# San Martin, Debenham I, -6807-06708, since 1951-03-21
-# (except 1960-03 / 1976-03-21)
-
-# Australia - territories
-# Heard Island, McDonald Islands (uninhabited)
-# previously sealers and scientific personnel wintered
-# <a href="http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html">
-# Margaret Turner reports
-# </a> (1999-09-30) that they're UTC+5, with no DST;
-# presumably this is when they have visitors.
-#
-# year-round bases
-# Casey, Bailey Peninsula, -6617+11032, since 1969
-# Davis, Vestfold Hills, -6835+07759, since 1957-01-13
-# (except 1964-11 - 1969-02)
-# Mawson, Holme Bay, -6736+06253, since 1954-02-13
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Antarctica/Casey 0 - zzz 1969
- 8:00 - WST # Western (Aus) Standard Time
-Zone Antarctica/Davis 0 - zzz 1957 Jan 13
- 7:00 - DAVT 1964 Nov # Davis Time
- 0 - zzz 1969 Feb
- 7:00 - DAVT
-Zone Antarctica/Mawson 0 - zzz 1954 Feb 13
- 6:00 - MAWT # Mawson Time
-# References:
-# <a href="http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html">
-# Casey Weather (1998-02-26)
-# </a>
-# <a href="http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html">
-# Davis Station, Antarctica (1998-02-26)
-# </a>
-# <a href="http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html">
-# Mawson Station, Antarctica (1998-02-25)
-# </a>
-
-# Brazil - year-round base
-# Comandante Ferraz, King George Island, -6205+05824, since 1983/4
-
-# Chile - year-round bases and towns
-# Escudero, South Shetland Is, -621157-0585735, since 1994
-# Presidente Eduadro Frei, King George Island, -6214-05848, since 1969-03-07
-# General Bernardo O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02
-# Capitan Arturo Prat, -6230-05941
-# Villa Las Estrellas (a town), around the Frei base, since 1984-04-09
-# These locations have always used Santiago time; use TZ='America/Santiago'.
-
-# China - year-round bases
-# Great Wall, King George Island, -6213-05858, since 1985-02-20
-# Zhongshan, Larsemann Hills, Prydz Bay, -6922+07623, since 1989-02-26
-
-# France - year-round bases
-#
-# From Antoine Leca (1997-01-20):
-# Time data are from Nicole Pailleau at the IFRTP
-# (French Institute for Polar Research and Technology).
-# She confirms that French Southern Territories and Terre Adelie bases
-# don't observe daylight saving time, even if Terre Adelie supplies came
-# from Tasmania.
-#
-# French Southern Territories with year-round inhabitants
-#
-# Martin-de-Vivies Base, Amsterdam Island, -374105+0773155, since 1950
-# Alfred-Faure Base, Crozet Islands, -462551+0515152, since 1964
-# Port-aux-Francais, Kerguelen Islands, -492110+0701303, since 1951;
-# whaling & sealing station operated 1908/1914, 1920/1929, and 1951/1956
-#
-# St Paul Island - near Amsterdam, uninhabited
-# fishing stations operated variously 1819/1931
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Francais
- 5:00 - TFT # ISO code TF Time
-#
-# year-round base in the main continent
-# Dumont-d'Urville, Ile des Petrels, -6640+14001, since 1956-11
-#
-# Another base at Port-Martin, 50km east, began operation in 1947.
-# It was destroyed by fire on 1952-01-14.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Antarctica/DumontDUrville 0 - zzz 1947
- 10:00 - PMT 1952 Jan 14 # Port-Martin Time
- 0 - zzz 1956 Nov
- 10:00 - DDUT # Dumont-d'Urville Time
-# Reference:
-# <a href="http://en.wikipedia.org/wiki/Dumont_d'Urville_Station">
-# Dumont d'Urville Station (2005-12-05)
-# </a>
-
-# Germany - year-round base
-# Georg von Neumayer, -7039-00815
-
-# India - year-round base
-# Dakshin Gangotri, -7005+01200
-
-# Japan - year-round bases
-# Dome Fuji, -7719+03942
-# Syowa, -690022+0393524
-#
-# From Hideyuki Suzuki (1999-02-06):
-# In all Japanese stations, +0300 is used as the standard time.
-#
-# Syowa station, which is the first antarctic station of Japan,
-# was established on 1957-01-29. Since Syowa station is still the main
-# station of Japan, it's appropriate for the principal location.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Antarctica/Syowa 0 - zzz 1957 Jan 29
- 3:00 - SYOT # Syowa Time
-# See:
-# <a href="http://www.nipr.ac.jp/english/ara01.html">
-# NIPR Antarctic Research Activities (1999-08-17)
-# </a>
-
-# S Korea - year-round base
-# King Sejong, King George Island, -6213-05847, since 1988
-
-# New Zealand - claims
-# Balleny Islands (never inhabited)
-# Scott Island (never inhabited)
-#
-# year-round base
-# Scott, Ross Island, since 1957-01, is like Antarctica/McMurdo.
-#
-# These rules for New Zealand are stolen from the `australasia' file.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule NZAQ 1974 only - Nov 3 2:00s 1:00 D
-Rule NZAQ 1975 1988 - Oct lastSun 2:00s 1:00 D
-Rule NZAQ 1989 only - Oct 8 2:00s 1:00 D
-Rule NZAQ 1990 2006 - Oct Sun>=1 2:00s 1:00 D
-Rule NZAQ 1975 only - Feb 23 2:00s 0 S
-Rule NZAQ 1976 1989 - Mar Sun>=1 2:00s 0 S
-Rule NZAQ 1990 2007 - Mar Sun>=15 2:00s 0 S
-Rule NZAQ 2007 max - Sep lastSun 2:00s 1:00 D
-Rule NZAQ 2008 max - Apr Sun>=1 2:00s 0 S
-
-# Norway - territories
-# Bouvet (never inhabited)
-#
-# claims
-# Peter I Island (never inhabited)
-
-# Poland - year-round base
-# Arctowski, King George Island, -620945-0582745, since 1977
-
-# Russia - year-round bases
-# Bellingshausen, King George Island, -621159-0585337, since 1968-02-22
-# Mirny, Davis coast, -6633+09301, since 1956-02
-# Molodezhnaya, Alasheyev Bay, -6740+04551,
-# year-round from 1962-02 to 1999-07-01
-# Novolazarevskaya, Queen Maud Land, -7046+01150,
-# year-round from 1960/61 to 1992
-
-# Vostok, since 1957-12-16, temporarily closed 1994-02/1994-11
-# <a href="http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP">
-# From Craig Mundell (1994-12-15)</a>:
-# Vostok, which is one of the Russian stations, is set on the same
-# time as Moscow, Russia.
-#
-# From Lee Hotz (2001-03-08):
-# I queried the folks at Columbia who spent the summer at Vostok and this is
-# what they had to say about time there:
-# ``in the US Camp (East Camp) we have been on New Zealand (McMurdo)
-# time, which is 12 hours ahead of GMT. The Russian Station Vostok was
-# 6 hours behind that (although only 2 miles away, i.e. 6 hours ahead
-# of GMT). This is a time zone I think two hours east of Moscow. The
-# natural time zone is in between the two: 8 hours ahead of GMT.''
-#
-# From Paul Eggert (2001-05-04):
-# This seems to be hopelessly confusing, so I asked Lee Hotz about it
-# in person. He said that some Antartic locations set their local
-# time so that noon is the warmest part of the day, and that this
-# changes during the year and does not necessarily correspond to mean
-# solar noon. So the Vostok time might have been whatever the clocks
-# happened to be during their visit. So we still don't really know what time
-# it is at Vostok. But we'll guess UTC+6.
-#
-Zone Antarctica/Vostok 0 - zzz 1957 Dec 16
- 6:00 - VOST # Vostok time
-
-# S Africa - year-round bases
-# Marion Island, -4653+03752
-# Sanae, -7141-00250
-
-# UK
-#
-# British Antarctic Territories (BAT) claims
-# South Orkney Islands
-# scientific station from 1903
-# whaling station at Signy I 1920/1926
-# South Shetland Islands
-#
-# year-round bases
-# Bird Island, South Georgia, -5400-03803, since 1983
-# Deception Island, -6259-06034, whaling station 1912/1931,
-# scientific station 1943/1967,
-# previously sealers and a scientific expedition wintered by accident,
-# and a garrison was deployed briefly
-# Halley, Coates Land, -7535-02604, since 1956-01-06
-# Halley is on a moving ice shelf and is periodically relocated
-# so that it is never more than 10km from its nominal location.
-# Rothera, Adelaide Island, -6734-6808, since 1976-12-01
-#
-# From Paul Eggert (2002-10-22)
-# <http://webexhibits.org/daylightsaving/g.html> says Rothera is -03 all year.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Antarctica/Rothera 0 - zzz 1976 Dec 1
- -3:00 - ROTT # Rothera time
-
-# Uruguay - year round base
-# Artigas, King George Island, -621104-0585107
-
-# USA - year-round bases
-#
-# Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
-#
-# From Ethan Dicks (1996-10-06):
-# It keeps the same time as Punta Arenas, Chile, because, just like us
-# and the South Pole, that's the other end of their supply line....
-# I verified with someone who was there that since 1980,
-# Palmer has followed Chile. Prior to that, before the Falklands War,
-# Palmer used to be supplied from Argentina.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Antarctica/Palmer 0 - zzz 1965
- -4:00 ArgAQ AR%sT 1969 Oct 5
- -3:00 ArgAQ AR%sT 1982 May
- -4:00 ChileAQ CL%sT
-#
-#
-# McMurdo, Ross Island, since 1955-12
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Antarctica/McMurdo 0 - zzz 1956
- 12:00 NZAQ NZ%sT
-#
-# Amundsen-Scott, South Pole, continuously occupied since 1956-11-20
-#
-# From Paul Eggert (1996-09-03):
-# Normally it wouldn't have a separate entry, since it's like the
-# larger Antarctica/McMurdo since 1970, but it's too famous to omit.
-#
-# From Chris Carrier (1996-06-27):
-# Siple, the first commander of the South Pole station,
-# stated that he would have liked to have kept GMT at the station,
-# but that he found it more convenient to keep GMT+12
-# as supplies for the station were coming from McMurdo Sound,
-# which was on GMT+12 because New Zealand was on GMT+12 all year
-# at that time (1957). (Source: Siple's book 90 degrees SOUTH.)
-#
-# From Susan Smith
-# http://www.cybertours.com/whs/pole10.html
-# (1995-11-13 16:24:56 +1300, no longer available):
-# We use the same time as McMurdo does.
-# And they use the same time as Christchurch, NZ does....
-# One last quirk about South Pole time.
-# All the electric clocks are usually wrong.
-# Something about the generators running at 60.1hertz or something
-# makes all of the clocks run fast. So every couple of days,
-# we have to go around and set them back 5 minutes or so.
-# Maybe if we let them run fast all of the time, we'd get to leave here sooner!!
-#
-Link Antarctica/McMurdo Antarctica/South_Pole
diff --git a/tools/zoneinfo/tzdata2008h/asia b/tools/zoneinfo/tzdata2008h/asia
deleted file mode 100644
index eb9f411..0000000
--- a/tools/zoneinfo/tzdata2008h/asia
+++ /dev/null
@@ -1,2043 +0,0 @@
-# @(#)asia 8.24
-# <pre>
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@elsie.nci.nih.gov for general use in the future).
-
-# From Paul Eggert (2006-03-22):
-#
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually. Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1990, and IATA SSIM is the source for entries afterwards.
-#
-# Another source occasionally used is Edward W. Whitman, World Time Differences,
-# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
-# I found in the UCLA library.
-#
-# A reliable and entertaining source about time zones is
-# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
-#
-# I invented the abbreviations marked `*' in the following table;
-# the rest are from earlier versions of this file, or from other sources.
-# Corrections are welcome!
-# std dst
-# LMT Local Mean Time
-# 2:00 EET EEST Eastern European Time
-# 2:00 IST IDT Israel
-# 3:00 AST ADT Arabia*
-# 3:30 IRST IRDT Iran
-# 4:00 GST Gulf*
-# 5:30 IST India
-# 7:00 ICT Indochina*
-# 7:00 WIT west Indonesia
-# 8:00 CIT central Indonesia
-# 8:00 CST China
-# 9:00 CJT Central Japanese Time (1896/1937)*
-# 9:00 EIT east Indonesia
-# 9:00 JST JDT Japan
-# 9:00 KST KDT Korea
-# 9:30 CST (Australian) Central Standard Time
-#
-# See the `europe' file for Russia and Turkey in Asia.
-
-# From Guy Harris:
-# Incorporates data for Singapore from Robert Elz' asia 1.1, as well as
-# additional information from Tom Yap, Sun Microsystems Intercontinental
-# Technical Support (including a page from the Official Airline Guide -
-# Worldwide Edition). The names for time zones are guesses.
-
-###############################################################################
-
-# These rules are stolen from the `europe' file.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule EUAsia 1981 max - Mar lastSun 1:00u 1:00 S
-Rule EUAsia 1979 1995 - Sep lastSun 1:00u 0 -
-Rule EUAsia 1996 max - Oct lastSun 1:00u 0 -
-Rule E-EurAsia 1981 max - Mar lastSun 0:00 1:00 S
-Rule E-EurAsia 1979 1995 - Sep lastSun 0:00 0 -
-Rule E-EurAsia 1996 max - Oct lastSun 0:00 0 -
-Rule RussiaAsia 1981 1984 - Apr 1 0:00 1:00 S
-Rule RussiaAsia 1981 1983 - Oct 1 0:00 0 -
-Rule RussiaAsia 1984 1991 - Sep lastSun 2:00s 0 -
-Rule RussiaAsia 1985 1991 - Mar lastSun 2:00s 1:00 S
-Rule RussiaAsia 1992 only - Mar lastSat 23:00 1:00 S
-Rule RussiaAsia 1992 only - Sep lastSat 23:00 0 -
-Rule RussiaAsia 1993 max - Mar lastSun 2:00s 1:00 S
-Rule RussiaAsia 1993 1995 - Sep lastSun 2:00s 0 -
-Rule RussiaAsia 1996 max - Oct lastSun 2:00s 0 -
-
-# Afghanistan
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Kabul 4:36:48 - LMT 1890
- 4:00 - AFT 1945
- 4:30 - AFT
-
-# Armenia
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger have Yerevan switching to 3:00 (with Russian DST)
-# in spring 1991, then to 4:00 with no DST in fall 1995, then
-# readopting Russian DST in 1997. Go with Shanks & Pottenger, even
-# when they disagree with others. Edgar Der-Danieliantz
-# reported (1996-05-04) that Yerevan probably wouldn't use DST
-# in 1996, though it did use DST in 1995. IATA SSIM (1991/1998) reports that
-# Armenia switched from 3:00 to 4:00 in 1998 and observed DST after 1991,
-# but started switching at 3:00s in 1998.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2
- 3:00 - YERT 1957 Mar # Yerevan Time
- 4:00 RussiaAsia YER%sT 1991 Mar 31 2:00s
- 3:00 1:00 YERST 1991 Sep 23 # independence
- 3:00 RussiaAsia AM%sT 1995 Sep 24 2:00s
- 4:00 - AMT 1997
- 4:00 RussiaAsia AM%sT
-
-# Azerbaijan
-# From Rustam Aliyev of the Azerbaijan Internet Forum (2005-10-23):
-# According to the resolution of Cabinet of Ministers, 1997
-# Resolution available at: http://aif.az/docs/daylight_res.pdf
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Azer 1997 max - Mar lastSun 4:00 1:00 S
-Rule Azer 1997 max - Oct lastSun 5:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Baku 3:19:24 - LMT 1924 May 2
- 3:00 - BAKT 1957 Mar # Baku Time
- 4:00 RussiaAsia BAK%sT 1991 Mar 31 2:00s
- 3:00 1:00 BAKST 1991 Aug 30 # independence
- 3:00 RussiaAsia AZ%sT 1992 Sep lastSat 23:00
- 4:00 - AZT 1996 # Azerbaijan time
- 4:00 EUAsia AZ%sT 1997
- 4:00 Azer AZ%sT
-
-# Bahrain
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Bahrain 3:22:20 - LMT 1920 # Al Manamah
- 4:00 - GST 1972 Jun
- 3:00 - AST
-
-# Bangladesh
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Dhaka 6:01:40 - LMT 1890
- 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
- 6:30 - BURT 1942 May 15 # Burma Time
- 5:30 - IST 1942 Sep
- 6:30 - BURT 1951 Sep 30
- 6:00 - DACT 1971 Mar 26 # Dacca Time
- 6:00 - BDT # Bangladesh Time
-
-# Bhutan
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Thimphu 5:58:36 - LMT 1947 Aug 15 # or Thimbu
- 5:30 - IST 1987 Oct
- 6:00 - BTT # Bhutan Time
-
-# British Indian Ocean Territory
-# Whitman and the 1995 CIA time zone map say 5:00, but the
-# 1997 and later maps say 6:00. Assume the switch occurred in 1996.
-# We have no information as to when standard time was introduced;
-# assume it occurred in 1907, the same year as Mauritius (which
-# then contained the Chagos Archipelago).
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Indian/Chagos 4:49:40 - LMT 1907
- 5:00 - IOT 1996 # BIOT Time
- 6:00 - IOT
-
-# Brunei
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan
- 7:30 - BNT 1933
- 8:00 - BNT
-
-# Burma / Myanmar
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Rangoon 6:24:40 - LMT 1880 # or Yangon
- 6:24:36 - RMT 1920 # Rangoon Mean Time?
- 6:30 - BURT 1942 May # Burma Time
- 9:00 - JST 1945 May 3
- 6:30 - MMT # Myanmar Time
-
-# Cambodia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Phnom_Penh 6:59:40 - LMT 1906 Jun 9
- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT?
- 7:00 - ICT 1912 May
- 8:00 - ICT 1931 May
- 7:00 - ICT
-
-# China
-
-# From Guy Harris:
-# People's Republic of China. Yes, they really have only one time zone.
-
-# From Bob Devine (1988-01-28):
-# No they don't. See TIME mag, 1986-02-17 p.52. Even though
-# China is across 4 physical time zones, before Feb 1, 1986 only the
-# Peking (Bejing) time zone was recognized. Since that date, China
-# has two of 'em -- Peking's and Urumqi (named after the capital of
-# the Xinjiang Uyghur Autonomous Region). I don't know about DST for it.
-#
-# . . .I just deleted the DST table and this editor makes it too
-# painful to suck in another copy.. So, here is what I have for
-# DST start/end dates for Peking's time zone (info from AP):
-#
-# 1986 May 4 - Sept 14
-# 1987 mid-April - ??
-
-# From U. S. Naval Observatory (1989-01-19):
-# CHINA 8 H AHEAD OF UTC ALL OF CHINA, INCL TAIWAN
-# CHINA 9 H AHEAD OF UTC APR 17 - SEP 10
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that China (except for Hong Kong and Macau)
-# has had a single time zone since 1980 May 1, observing summer DST
-# from 1986 through 1991; this contradicts Devine's
-# note about Time magazine, though apparently _something_ happened in 1986.
-# Go with Shanks & Pottenger for now. I made up names for the other
-# pre-1980 time zones.
-
-# From Shanks & Pottenger:
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Shang 1940 only - Jun 3 0:00 1:00 D
-Rule Shang 1940 1941 - Oct 1 0:00 0 S
-Rule Shang 1941 only - Mar 16 0:00 1:00 D
-Rule PRC 1986 only - May 4 0:00 1:00 D
-Rule PRC 1986 1991 - Sep Sun>=11 0:00 0 S
-Rule PRC 1987 1991 - Apr Sun>=10 0:00 1:00 D
-
-# From Anthony Fok (2001-12-20):
-# BTW, I did some research on-line and found some info regarding these five
-# historic timezones from some Taiwan websites. And yes, there are official
-# Chinese names for these locales (before 1949).
-#
-# From Jesper Norgaard Welen (2006-07-14):
-# I have investigated the timezones around 1970 on the
-# http://www.astro.com/atlas site [with provinces and county
-# boundaries summarized below].... A few other exceptions were two
-# counties on the Sichuan side of the Xizang-Sichuan border,
-# counties Dege and Baiyu which lies on the Sichuan side and are
-# therefore supposed to be GMT+7, Xizang region being GMT+6, but Dege
-# county is GMT+8 according to astro.com while Baiyu county is GMT+6
-# (could be true), for the moment I am assuming that those two
-# counties are mistakes in the astro.com data.
-
-# From Paul Eggert (2008-02-11):
-# I just now checked Google News for western news sources that talk
-# about China's single time zone, and couldn't find anything before 1986
-# talking about China being in one time zone. (That article was: Jim
-# Mann, "A clumsy embrace for another western custom: China on daylight
-# time--sort of", Los Angeles Times, 1986-05-05. By the way, this
-# article confirms the tz database's data claiming that China began
-# observing daylight saving time in 1986.
-#
-# From Thomas S. Mullaney (2008-02-11):
-# I think you're combining two subjects that need to treated
-# separately: daylight savings (which, you're correct, wasn't
-# implemented until the 1980s) and the unified time zone centered near
-# Beijing (which was implemented in 1949). Briefly, there was also a
-# "Lhasa Time" in Tibet and "Urumqi Time" in Xinjiang. The first was
-# ceased, and the second eventually recognized (again, in the 1980s).
-#
-# From Paul Eggert (2008-06-30):
-# There seems to be a good chance China switched to a single time zone in 1949
-# rather than in 1980 as Shanks & Pottenger have it, but we don't have a
-# reliable documentary source saying so yet, so for now we still go with
-# Shanks & Pottenger.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-# Changbai Time ("Long-white Time", Long-white = Heilongjiang area)
-# Heilongjiang (except Mohe county), Jilin
-Zone Asia/Harbin 8:26:44 - LMT 1928 # or Haerbin
- 8:30 - CHAT 1932 Mar # Changbai Time
- 8:00 - CST 1940
- 9:00 - CHAT 1966 May
- 8:30 - CHAT 1980 May
- 8:00 PRC C%sT
-# Zhongyuan Time ("Central plain Time")
-# most of China
-Zone Asia/Shanghai 8:05:52 - LMT 1928
- 8:00 Shang C%sT 1949
- 8:00 PRC C%sT
-# Long-shu Time (probably due to Long and Shu being two names of that area)
-# Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
-# most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
-# counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
-# Yangchun, Yangjiang, Yu'nan, and Yunfu.
-Zone Asia/Chongqing 7:06:20 - LMT 1928 # or Chungking
- 7:00 - LONT 1980 May # Long-shu Time
- 8:00 PRC C%sT
-# Xin-zang Time ("Xinjiang-Tibet Time")
-# The Gansu counties Aksay, Anxi, Dunhuang, Subei; west Qinghai;
-# the Guangdong counties Xuwen, Haikang, Suixi, Lianjiang,
-# Zhanjiang, Wuchuan, Huazhou, Gaozhou, Maoming, Dianbai, and Xinyi;
-# east Tibet, including Lhasa, Chamdo, Shigaise, Jimsar, Shawan and Hutubi;
-# east Xinjiang, including Urumqi, Turpan, Karamay, Korla, Minfeng, Jinghe,
-# Wusu, Qiemo, Xinyan, Wulanwusu, Jinghe, Yumin, Tacheng, Tuoli, Emin,
-# Shihezi, Changji, Yanqi, Heshuo, Tuokexun, Tulufan, Shanshan, Hami,
-# Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan.
-Zone Asia/Urumqi 5:50:20 - LMT 1928 # or Urumchi
- 6:00 - URUT 1980 May # Urumqi Time
- 8:00 PRC C%sT
-# Kunlun Time
-# West Tibet, including Pulan, Aheqi, Shufu, Shule;
-# West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke,
-# Zhaosu, Tekesi, Gongliu, Chabuchaer, Huocheng, Bole, Pishan, Suiding,
-# and Yarkand.
-Zone Asia/Kashgar 5:03:56 - LMT 1928 # or Kashi or Kaxgar
- 5:30 - KAST 1940 # Kashgar Time
- 5:00 - KAST 1980 May
- 8:00 PRC C%sT
-
-# Hong Kong (Xianggang)
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule HK 1946 only - Apr 20 3:30 1:00 S
-Rule HK 1946 only - Dec 1 3:30 0 -
-Rule HK 1947 only - Apr 13 3:30 1:00 S
-Rule HK 1947 only - Dec 30 3:30 0 -
-Rule HK 1948 only - May 2 3:30 1:00 S
-Rule HK 1948 1952 - Oct lastSun 3:30 0 -
-Rule HK 1949 1953 - Apr Sun>=1 3:30 1:00 S
-Rule HK 1953 only - Nov 1 3:30 0 -
-Rule HK 1954 1964 - Mar Sun>=18 3:30 1:00 S
-Rule HK 1954 only - Oct 31 3:30 0 -
-Rule HK 1955 1964 - Nov Sun>=1 3:30 0 -
-Rule HK 1965 1977 - Apr Sun>=16 3:30 1:00 S
-Rule HK 1965 1977 - Oct Sun>=16 3:30 0 -
-Rule HK 1979 1980 - May Sun>=8 3:30 1:00 S
-Rule HK 1979 1980 - Oct Sun>=16 3:30 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Hong_Kong 7:36:36 - LMT 1904 Oct 30
- 8:00 HK HK%sT
-
-
-###############################################################################
-
-# Taiwan
-
-# Shanks & Pottenger write that Taiwan observed DST during 1945, when it
-# was still controlled by Japan. This is hard to believe, but we don't
-# have any other information.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Taiwan 1945 1951 - May 1 0:00 1:00 D
-Rule Taiwan 1945 1951 - Oct 1 0:00 0 S
-Rule Taiwan 1952 only - Mar 1 0:00 1:00 D
-Rule Taiwan 1952 1954 - Nov 1 0:00 0 S
-Rule Taiwan 1953 1959 - Apr 1 0:00 1:00 D
-Rule Taiwan 1955 1961 - Oct 1 0:00 0 S
-Rule Taiwan 1960 1961 - Jun 1 0:00 1:00 D
-Rule Taiwan 1974 1975 - Apr 1 0:00 1:00 D
-Rule Taiwan 1974 1975 - Oct 1 0:00 0 S
-Rule Taiwan 1980 only - Jun 30 0:00 1:00 D
-Rule Taiwan 1980 only - Sep 30 0:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Taipei 8:06:00 - LMT 1896 # or Taibei or T'ai-pei
- 8:00 Taiwan C%sT
-
-# Macau (Macao, Aomen)
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Macau 1961 1962 - Mar Sun>=16 3:30 1:00 S
-Rule Macau 1961 1964 - Nov Sun>=1 3:30 0 -
-Rule Macau 1963 only - Mar Sun>=16 0:00 1:00 S
-Rule Macau 1964 only - Mar Sun>=16 3:30 1:00 S
-Rule Macau 1965 only - Mar Sun>=16 0:00 1:00 S
-Rule Macau 1965 only - Oct 31 0:00 0 -
-Rule Macau 1966 1971 - Apr Sun>=16 3:30 1:00 S
-Rule Macau 1966 1971 - Oct Sun>=16 3:30 0 -
-Rule Macau 1972 1974 - Apr Sun>=15 0:00 1:00 S
-Rule Macau 1972 1973 - Oct Sun>=15 0:00 0 -
-Rule Macau 1974 1977 - Oct Sun>=15 3:30 0 -
-Rule Macau 1975 1977 - Apr Sun>=15 3:30 1:00 S
-Rule Macau 1978 1980 - Apr Sun>=15 0:00 1:00 S
-Rule Macau 1978 1980 - Oct Sun>=15 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Macau 7:34:20 - LMT 1912
- 8:00 Macau MO%sT 1999 Dec 20 # return to China
- 8:00 PRC C%sT
-
-
-###############################################################################
-
-# Cyprus
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Cyprus 1975 only - Apr 13 0:00 1:00 S
-Rule Cyprus 1975 only - Oct 12 0:00 0 -
-Rule Cyprus 1976 only - May 15 0:00 1:00 S
-Rule Cyprus 1976 only - Oct 11 0:00 0 -
-Rule Cyprus 1977 1980 - Apr Sun>=1 0:00 1:00 S
-Rule Cyprus 1977 only - Sep 25 0:00 0 -
-Rule Cyprus 1978 only - Oct 2 0:00 0 -
-Rule Cyprus 1979 1997 - Sep lastSun 0:00 0 -
-Rule Cyprus 1981 1998 - Mar lastSun 0:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Nicosia 2:13:28 - LMT 1921 Nov 14
- 2:00 Cyprus EE%sT 1998 Sep
- 2:00 EUAsia EE%sT
-# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
-
-# Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
-# However, for various reasons many users expect to find it under Europe.
-Link Asia/Nicosia Europe/Nicosia
-
-# Georgia
-# From Paul Eggert (1994-11-19):
-# Today's _Economist_ (p 60) reports that Georgia moved its clocks forward
-# an hour recently, due to a law proposed by Zurab Murvanidze,
-# an MP who went on a hunger strike for 11 days to force discussion about it!
-# We have no details, but we'll guess they didn't move the clocks back in fall.
-#
-# From Mathew Englander, quoting AP (1996-10-23 13:05-04):
-# Instead of putting back clocks at the end of October, Georgia
-# will stay on daylight savings time this winter to save energy,
-# President Eduard Shevardnadze decreed Wednesday.
-#
-# From the BBC via Joseph S. Myers (2004-06-27):
-#
-# Georgia moved closer to Western Europe on Sunday... The former Soviet
-# republic has changed its time zone back to that of Moscow. As a result it
-# is now just four hours ahead of Greenwich Mean Time, rather than five hours
-# ahead. The switch was decreed by the pro-Western president of Georgia,
-# Mikhail Saakashvili, who said the change was partly prompted by the process
-# of integration into Europe.
-
-# From Teimuraz Abashidze (2005-11-07):
-# Government of Georgia ... decided to NOT CHANGE daylight savings time on
-# [Oct.] 30, as it was done before during last more than 10 years.
-# Currently, we are in fact GMT +4:00, as before 30 October it was GMT
-# +3:00.... The problem is, there is NO FORMAL LAW or governmental document
-# about it. As far as I can find, I was told, that there is no document,
-# because we just DIDN'T ISSUE document about switching to winter time....
-# I don't know what can be done, especially knowing that some years ago our
-# DST rules where changed THREE TIMES during one month.
-
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Tbilisi 2:59:16 - LMT 1880
- 2:59:16 - TBMT 1924 May 2 # Tbilisi Mean Time
- 3:00 - TBIT 1957 Mar # Tbilisi Time
- 4:00 RussiaAsia TBI%sT 1991 Mar 31 2:00s
- 3:00 1:00 TBIST 1991 Apr 9 # independence
- 3:00 RussiaAsia GE%sT 1992 # Georgia Time
- 3:00 E-EurAsia GE%sT 1994 Sep lastSun
- 4:00 E-EurAsia GE%sT 1996 Oct lastSun
- 4:00 1:00 GEST 1997 Mar lastSun
- 4:00 E-EurAsia GE%sT 2004 Jun 27
- 3:00 RussiaAsia GE%sT 2005 Mar lastSun 2:00
- 4:00 - GET
-
-# East Timor
-
-# See Indonesia for the 1945 transition.
-
-# From Joao Carrascalao, brother of the former governor of East Timor, in
-# <a href="http://etan.org/et99c/december/26-31/30ETMAY.htm">
-# East Timor may be late for its millennium
-# </a> (1999-12-26/31):
-# Portugal tried to change the time forward in 1974 because the sun
-# rises too early but the suggestion raised a lot of problems with the
-# Timorese and I still don't think it would work today because it
-# conflicts with their way of life.
-
-# From Paul Eggert (2000-12-04):
-# We don't have any record of the above attempt.
-# Most likely our records are incomplete, but we have no better data.
-
-# <a href="http://www.hri.org/news/world/undh/last/00-08-16.undh.html">
-# From Manoel de Almeida e Silva, Deputy Spokesman for the UN Secretary-General
-# (2000-08-16)</a>:
-# The Cabinet of the East Timor Transition Administration decided
-# today to advance East Timor's time by one hour. The time change,
-# which will be permanent, with no seasonal adjustment, will happen at
-# midnight on Saturday, September 16.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Dili 8:22:20 - LMT 1912
- 8:00 - TLT 1942 Feb 21 23:00 # E Timor Time
- 9:00 - JST 1945 Sep 23
- 9:00 - TLT 1976 May 3
- 8:00 - CIT 2000 Sep 17 00:00
- 9:00 - TLT
-
-# India
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata
- 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
- 6:30 - BURT 1942 May 15 # Burma Time
- 5:30 - IST 1942 Sep
- 5:30 1:00 IST 1945 Oct 15
- 5:30 - IST
-# The following are like Asia/Kolkata:
-# Andaman Is
-# Lakshadweep (Laccadive, Minicoy and Amindivi Is)
-# Nicobar Is
-
-# Indonesia
-#
-# From Gwillim Law (2001-05-28), overriding Shanks & Pottenger:
-# <http://www.sumatera-inc.com/go_to_invest/about_indonesia.asp#standtime>
-# says that Indonesia's time zones changed on 1988-01-01. Looking at some
-# time zone maps, I think that must refer to Western Borneo (Kalimantan Barat
-# and Kalimantan Tengah) switching from UTC+8 to UTC+7.
-#
-# From Paul Eggert (2007-03-10):
-# Here is another correction to Shanks & Pottenger.
-# JohnTWB writes that Japanese forces did not surrender control in
-# Indonesia until 1945-09-01 00:00 at the earliest (in Jakarta) and
-# other formal surrender ceremonies were September 9, 11, and 13, plus
-# September 12 for the regional surrender to Mountbatten in Singapore.
-# These would be the earliest possible times for a change.
-# Regimes horaires pour le monde entier, by Henri Le Corre, (Editions
-# Traditionnelles, 1987, Paris) says that Java and Madura switched
-# from JST to UTC+07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
-# (Hollandia). For now, assume all Indonesian locations other than Jayapura
-# switched on 1945-09-23.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Jakarta 7:07:12 - LMT 1867 Aug 10
-# Shanks & Pottenger say the next transition was at 1924 Jan 1 0:13,
-# but this must be a typo.
- 7:07:12 - JMT 1923 Dec 31 23:47:12 # Jakarta
- 7:20 - JAVT 1932 Nov # Java Time
- 7:30 - WIT 1942 Mar 23
- 9:00 - JST 1945 Sep 23
- 7:30 - WIT 1948 May
- 8:00 - WIT 1950 May
- 7:30 - WIT 1964
- 7:00 - WIT
-Zone Asia/Pontianak 7:17:20 - LMT 1908 May
- 7:17:20 - PMT 1932 Nov # Pontianak MT
- 7:30 - WIT 1942 Jan 29
- 9:00 - JST 1945 Sep 23
- 7:30 - WIT 1948 May
- 8:00 - WIT 1950 May
- 7:30 - WIT 1964
- 8:00 - CIT 1988 Jan 1
- 7:00 - WIT
-Zone Asia/Makassar 7:57:36 - LMT 1920
- 7:57:36 - MMT 1932 Nov # Macassar MT
- 8:00 - CIT 1942 Feb 9
- 9:00 - JST 1945 Sep 23
- 8:00 - CIT
-Zone Asia/Jayapura 9:22:48 - LMT 1932 Nov
- 9:00 - EIT 1944 Sep 1
- 9:30 - CST 1964
- 9:00 - EIT
-
-# Iran
-
-# From Roozbeh Pournader (2003-03-15):
-# This is an English translation of what I just found (originally in Persian).
-# The Gregorian dates in brackets are mine:
-#
-# Official Newspaper No. 13548-1370/6/25 [1991-09-16]
-# No. 16760/T233 H 1370/6/10 [1991-09-01]
-#
-# The Rule About Change of the Official Time of the Country
-#
-# The Board of Ministers, in the meeting dated 1370/5/23 [1991-08-14],
-# based on the suggestion number 2221/D dated 1370/4/22 [1991-07-13]
-# of the Country's Organization for Official and Employment Affairs,
-# and referring to the law for equating the working hours of workers
-# and officers in the whole country dated 1359/4/23 [1980-07-14], and
-# for synchronizing the official times of the country, agreed that:
-#
-# The official time of the country will should move forward one hour
-# at the 24[:00] hours of the first day of Farvardin and should return
-# to its previous state at the 24[:00] hours of the 30th day of
-# Shahrivar.
-#
-# First Deputy to the President - Hassan Habibi
-#
-# From personal experience, that agrees with what has been followed
-# for at least the last 5 years. Before that, for a few years, the
-# date used was the first Thursday night of Farvardin and the last
-# Thursday night of Shahrivar, but I can't give exact dates....
-# I have also changed the abbreviations to what is considered correct
-# here in Iran, IRST for regular time and IRDT for daylight saving time.
-#
-# From Roozbeh Pournader (2005-04-05):
-# The text of the Iranian law, in effect since 1925, clearly mentions
-# that the true solar year is the measure, and there is no arithmetic
-# leap year calculation involved. There has never been any serious
-# plan to change that law....
-#
-# From Paul Eggert (2006-03-22):
-# Go with Shanks & Pottenger before Sept. 1991, and with Pournader thereafter.
-# I used Ed Reingold's cal-persia in GNU Emacs 21.2 to check Persian dates,
-# stopping after 2037 when 32-bit time_t's overflow.
-# That cal-persia used Birashk's approximation, which disagrees with the solar
-# calendar predictions for the year 2025, so I corrected those dates by hand.
-#
-# From Oscar van Vlijmen (2005-03-30), writing about future
-# discrepancies between cal-persia and the Iranian calendar:
-# For 2091 solar-longitude-after yields 2091-03-20 08:40:07.7 UT for
-# the vernal equinox and that gets so close to 12:00 some local
-# Iranian time that the definition of the correct location needs to be
-# known exactly, amongst other factors. 2157 is even closer:
-# 2157-03-20 08:37:15.5 UT. But the Gregorian year 2025 should give
-# no interpretation problem whatsoever. By the way, another instant
-# in the near future where there will be a discrepancy between
-# arithmetical and astronomical Iranian calendars will be in 2058:
-# vernal equinox on 2058-03-20 09:03:05.9 UT. The Java version of
-# Reingold's/Dershowitz' calculator gives correctly the Gregorian date
-# 2058-03-21 for 1 Farvardin 1437 (astronomical).
-#
-# From Steffen Thorsen (2006-03-22):
-# Several of my users have reported that Iran will not observe DST anymore:
-# http://www.irna.ir/en/news/view/line-17/0603193812164948.htm
-#
-# From Reuters (2007-09-16), with a heads-up from Jesper Norgaard Welen:
-# ... the Guardian Council ... approved a law on Sunday to re-introduce
-# daylight saving time ...
-# http://uk.reuters.com/article/oilRpt/idUKBLA65048420070916
-#
-# From Roozbeh Pournader (2007-11-05):
-# This is quoted from Official Gazette of the Islamic Republic of
-# Iran, Volume 63, Number 18242, dated Tuesday 1386/6/24
-# [2007-10-16]. I am doing the best translation I can:...
-# The official time of the country will be moved forward for one hour
-# on the 24 hours of the first day of the month of Farvardin and will
-# be changed back to its previous state on the 24 hours of the
-# thirtieth day of Shahrivar.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Iran 1978 1980 - Mar 21 0:00 1:00 D
-Rule Iran 1978 only - Oct 21 0:00 0 S
-Rule Iran 1979 only - Sep 19 0:00 0 S
-Rule Iran 1980 only - Sep 23 0:00 0 S
-Rule Iran 1991 only - May 3 0:00 1:00 D
-Rule Iran 1992 1995 - Mar 22 0:00 1:00 D
-Rule Iran 1991 1995 - Sep 22 0:00 0 S
-Rule Iran 1996 only - Mar 21 0:00 1:00 D
-Rule Iran 1996 only - Sep 21 0:00 0 S
-Rule Iran 1997 1999 - Mar 22 0:00 1:00 D
-Rule Iran 1997 1999 - Sep 22 0:00 0 S
-Rule Iran 2000 only - Mar 21 0:00 1:00 D
-Rule Iran 2000 only - Sep 21 0:00 0 S
-Rule Iran 2001 2003 - Mar 22 0:00 1:00 D
-Rule Iran 2001 2003 - Sep 22 0:00 0 S
-Rule Iran 2004 only - Mar 21 0:00 1:00 D
-Rule Iran 2004 only - Sep 21 0:00 0 S
-Rule Iran 2005 only - Mar 22 0:00 1:00 D
-Rule Iran 2005 only - Sep 22 0:00 0 S
-Rule Iran 2008 only - Mar 21 0:00 1:00 D
-Rule Iran 2008 only - Sep 21 0:00 0 S
-Rule Iran 2009 2011 - Mar 22 0:00 1:00 D
-Rule Iran 2009 2011 - Sep 22 0:00 0 S
-Rule Iran 2012 only - Mar 21 0:00 1:00 D
-Rule Iran 2012 only - Sep 21 0:00 0 S
-Rule Iran 2013 2015 - Mar 22 0:00 1:00 D
-Rule Iran 2013 2015 - Sep 22 0:00 0 S
-Rule Iran 2016 only - Mar 21 0:00 1:00 D
-Rule Iran 2016 only - Sep 21 0:00 0 S
-Rule Iran 2017 2019 - Mar 22 0:00 1:00 D
-Rule Iran 2017 2019 - Sep 22 0:00 0 S
-Rule Iran 2020 only - Mar 21 0:00 1:00 D
-Rule Iran 2020 only - Sep 21 0:00 0 S
-Rule Iran 2021 2023 - Mar 22 0:00 1:00 D
-Rule Iran 2021 2023 - Sep 22 0:00 0 S
-Rule Iran 2024 only - Mar 21 0:00 1:00 D
-Rule Iran 2024 only - Sep 21 0:00 0 S
-Rule Iran 2025 2027 - Mar 22 0:00 1:00 D
-Rule Iran 2025 2027 - Sep 22 0:00 0 S
-Rule Iran 2028 2029 - Mar 21 0:00 1:00 D
-Rule Iran 2028 2029 - Sep 21 0:00 0 S
-Rule Iran 2030 2031 - Mar 22 0:00 1:00 D
-Rule Iran 2030 2031 - Sep 22 0:00 0 S
-Rule Iran 2032 2033 - Mar 21 0:00 1:00 D
-Rule Iran 2032 2033 - Sep 21 0:00 0 S
-Rule Iran 2034 2035 - Mar 22 0:00 1:00 D
-Rule Iran 2034 2035 - Sep 22 0:00 0 S
-Rule Iran 2036 2037 - Mar 21 0:00 1:00 D
-Rule Iran 2036 2037 - Sep 21 0:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Tehran 3:25:44 - LMT 1916
- 3:25:44 - TMT 1946 # Tehran Mean Time
- 3:30 - IRST 1977 Nov
- 4:00 Iran IR%sT 1979
- 3:30 Iran IR%sT
-
-
-# Iraq
-#
-# From Jonathan Lennox (2000-06-12):
-# An article in this week's Economist ("Inside the Saddam-free zone", p. 50 in
-# the U.S. edition) on the Iraqi Kurds contains a paragraph:
-# "The three northern provinces ... switched their clocks this spring and
-# are an hour ahead of Baghdad."
-#
-# But Rives McDow (2000-06-18) quotes a contact in Iraqi-Kurdistan as follows:
-# In the past, some Kurdish nationalists, as a protest to the Iraqi
-# Government, did not adhere to daylight saving time. They referred
-# to daylight saving as Saddam time. But, as of today, the time zone
-# in Iraqi-Kurdistan is on standard time with Baghdad, Iraq.
-#
-# So we'll ignore the Economist's claim.
-
-# From Steffen Thorsen (2008-03-10):
-# The cabinet in Iraq abolished DST last week, according to the following
-# news sources (in Arabic):
-# <a href="http://www.aljeeran.net/wesima_articles/news-20080305-98602.html">
-# http://www.aljeeran.net/wesima_articles/news-20080305-98602.html
-# </a>
-# <a href="http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10">
-# http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10
-# </a>
-#
-# We have published a short article in English about the change:
-# <a href="http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html">
-# http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html
-# </a>
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Iraq 1982 only - May 1 0:00 1:00 D
-Rule Iraq 1982 1984 - Oct 1 0:00 0 S
-Rule Iraq 1983 only - Mar 31 0:00 1:00 D
-Rule Iraq 1984 1985 - Apr 1 0:00 1:00 D
-Rule Iraq 1985 1990 - Sep lastSun 1:00s 0 S
-Rule Iraq 1986 1990 - Mar lastSun 1:00s 1:00 D
-# IATA SSIM (1991/1996) says Apr 1 12:01am UTC; guess the `:01' is a typo.
-# Shanks & Pottenger say Iraq did not observe DST 1992/1997; ignore this.
-#
-Rule Iraq 1991 2007 - Apr 1 3:00s 1:00 D
-Rule Iraq 1991 2007 - Oct 1 3:00s 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Baghdad 2:57:40 - LMT 1890
- 2:57:36 - BMT 1918 # Baghdad Mean Time?
- 3:00 - AST 1982 May
- 3:00 Iraq A%sT
-
-
-###############################################################################
-
-# Israel
-
-# From Ephraim Silverberg (2001-01-11):
-#
-# I coined "IST/IDT" circa 1988. Until then there were three
-# different abbreviations in use:
-#
-# JST Jerusalem Standard Time [Danny Braniss, Hebrew University]
-# IZT Israel Zonal (sic) Time [Prof. Haim Papo, Technion]
-# EEST Eastern Europe Standard Time [used by almost everyone else]
-#
-# Since timezones should be called by country and not capital cities,
-# I ruled out JST. As Israel is in Asia Minor and not Eastern Europe,
-# EEST was equally unacceptable. Since "zonal" was not compatible with
-# any other timezone abbreviation, I felt that 'IST' was the way to go
-# and, indeed, it has received almost universal acceptance in timezone
-# settings in Israeli computers.
-#
-# In any case, I am happy to share timezone abbreviations with India,
-# high on my favorite-country list (and not only because my wife's
-# family is from India).
-
-# From Shanks & Pottenger:
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Zion 1940 only - Jun 1 0:00 1:00 D
-Rule Zion 1942 1944 - Nov 1 0:00 0 S
-Rule Zion 1943 only - Apr 1 2:00 1:00 D
-Rule Zion 1944 only - Apr 1 0:00 1:00 D
-Rule Zion 1945 only - Apr 16 0:00 1:00 D
-Rule Zion 1945 only - Nov 1 2:00 0 S
-Rule Zion 1946 only - Apr 16 2:00 1:00 D
-Rule Zion 1946 only - Nov 1 0:00 0 S
-Rule Zion 1948 only - May 23 0:00 2:00 DD
-Rule Zion 1948 only - Sep 1 0:00 1:00 D
-Rule Zion 1948 1949 - Nov 1 2:00 0 S
-Rule Zion 1949 only - May 1 0:00 1:00 D
-Rule Zion 1950 only - Apr 16 0:00 1:00 D
-Rule Zion 1950 only - Sep 15 3:00 0 S
-Rule Zion 1951 only - Apr 1 0:00 1:00 D
-Rule Zion 1951 only - Nov 11 3:00 0 S
-Rule Zion 1952 only - Apr 20 2:00 1:00 D
-Rule Zion 1952 only - Oct 19 3:00 0 S
-Rule Zion 1953 only - Apr 12 2:00 1:00 D
-Rule Zion 1953 only - Sep 13 3:00 0 S
-Rule Zion 1954 only - Jun 13 0:00 1:00 D
-Rule Zion 1954 only - Sep 12 0:00 0 S
-Rule Zion 1955 only - Jun 11 2:00 1:00 D
-Rule Zion 1955 only - Sep 11 0:00 0 S
-Rule Zion 1956 only - Jun 3 0:00 1:00 D
-Rule Zion 1956 only - Sep 30 3:00 0 S
-Rule Zion 1957 only - Apr 29 2:00 1:00 D
-Rule Zion 1957 only - Sep 22 0:00 0 S
-Rule Zion 1974 only - Jul 7 0:00 1:00 D
-Rule Zion 1974 only - Oct 13 0:00 0 S
-Rule Zion 1975 only - Apr 20 0:00 1:00 D
-Rule Zion 1975 only - Aug 31 0:00 0 S
-Rule Zion 1985 only - Apr 14 0:00 1:00 D
-Rule Zion 1985 only - Sep 15 0:00 0 S
-Rule Zion 1986 only - May 18 0:00 1:00 D
-Rule Zion 1986 only - Sep 7 0:00 0 S
-Rule Zion 1987 only - Apr 15 0:00 1:00 D
-Rule Zion 1987 only - Sep 13 0:00 0 S
-Rule Zion 1988 only - Apr 9 0:00 1:00 D
-Rule Zion 1988 only - Sep 3 0:00 0 S
-
-# From Ephraim Silverberg
-# (1997-03-04, 1998-03-16, 1998-12-28, 2000-01-17, 2000-07-25, 2004-12-22,
-# and 2005-02-17):
-
-# According to the Office of the Secretary General of the Ministry of
-# Interior, there is NO set rule for Daylight-Savings/Standard time changes.
-# One thing is entrenched in law, however: that there must be at least 150
-# days of daylight savings time annually. From 1993-1998, the change to
-# daylight savings time was on a Friday morning from midnight IST to
-# 1 a.m IDT; up until 1998, the change back to standard time was on a
-# Saturday night from midnight daylight savings time to 11 p.m. standard
-# time. 1996 is an exception to this rule where the change back to standard
-# time took place on Sunday night instead of Saturday night to avoid
-# conflicts with the Jewish New Year. In 1999, the change to
-# daylight savings time was still on a Friday morning but from
-# 2 a.m. IST to 3 a.m. IDT; furthermore, the change back to standard time
-# was also on a Friday morning from 2 a.m. IDT to 1 a.m. IST for
-# 1999 only. In the year 2000, the change to daylight savings time was
-# similar to 1999, but although the change back will be on a Friday, it
-# will take place from 1 a.m. IDT to midnight IST. Starting in 2001, all
-# changes to/from will take place at 1 a.m. old time, but now there is no
-# rule as to what day of the week it will take place in as the start date
-# (except in 2003) is the night after the Passover Seder (i.e. the eve
-# of the 16th of Nisan in the lunar Hebrew calendar) and the end date
-# (except in 2002) is three nights before Yom Kippur [Day of Atonement]
-# (the eve of the 7th of Tishrei in the lunar Hebrew calendar).
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Zion 1989 only - Apr 30 0:00 1:00 D
-Rule Zion 1989 only - Sep 3 0:00 0 S
-Rule Zion 1990 only - Mar 25 0:00 1:00 D
-Rule Zion 1990 only - Aug 26 0:00 0 S
-Rule Zion 1991 only - Mar 24 0:00 1:00 D
-Rule Zion 1991 only - Sep 1 0:00 0 S
-Rule Zion 1992 only - Mar 29 0:00 1:00 D
-Rule Zion 1992 only - Sep 6 0:00 0 S
-Rule Zion 1993 only - Apr 2 0:00 1:00 D
-Rule Zion 1993 only - Sep 5 0:00 0 S
-
-# The dates for 1994-1995 were obtained from Office of the Spokeswoman for the
-# Ministry of Interior, Jerusalem, Israel. The spokeswoman can be reached by
-# calling the office directly at 972-2-6701447 or 972-2-6701448.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Zion 1994 only - Apr 1 0:00 1:00 D
-Rule Zion 1994 only - Aug 28 0:00 0 S
-Rule Zion 1995 only - Mar 31 0:00 1:00 D
-Rule Zion 1995 only - Sep 3 0:00 0 S
-
-# The dates for 1996 were determined by the Minister of Interior of the
-# time, Haim Ramon. The official announcement regarding 1996-1998
-# (with the dates for 1997-1998 no longer being relevant) can be viewed at:
-#
-# ftp://ftp.cs.huji.ac.il/pub/tz/announcements/1996-1998.ramon.ps.gz
-#
-# The dates for 1997-1998 were altered by his successor, Rabbi Eli Suissa.
-#
-# The official announcements for the years 1997-1999 can be viewed at:
-#
-# ftp://ftp.cs.huji.ac.il/pub/tz/announcements/YYYY.ps.gz
-#
-# where YYYY is the relevant year.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Zion 1996 only - Mar 15 0:00 1:00 D
-Rule Zion 1996 only - Sep 16 0:00 0 S
-Rule Zion 1997 only - Mar 21 0:00 1:00 D
-Rule Zion 1997 only - Sep 14 0:00 0 S
-Rule Zion 1998 only - Mar 20 0:00 1:00 D
-Rule Zion 1998 only - Sep 6 0:00 0 S
-Rule Zion 1999 only - Apr 2 2:00 1:00 D
-Rule Zion 1999 only - Sep 3 2:00 0 S
-
-# The Knesset Interior Committee has changed the dates for 2000 for
-# the third time in just over a year and have set new dates for the
-# years 2001-2004 as well.
-#
-# The official announcement for the start date of 2000 can be viewed at:
-#
-# ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2000-start.ps.gz
-#
-# The official announcement for the end date of 2000 and the dates
-# for the years 2001-2004 can be viewed at:
-#
-# ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2000-2004.ps.gz
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Zion 2000 only - Apr 14 2:00 1:00 D
-Rule Zion 2000 only - Oct 6 1:00 0 S
-Rule Zion 2001 only - Apr 9 1:00 1:00 D
-Rule Zion 2001 only - Sep 24 1:00 0 S
-Rule Zion 2002 only - Mar 29 1:00 1:00 D
-Rule Zion 2002 only - Oct 7 1:00 0 S
-Rule Zion 2003 only - Mar 28 1:00 1:00 D
-Rule Zion 2003 only - Oct 3 1:00 0 S
-Rule Zion 2004 only - Apr 7 1:00 1:00 D
-Rule Zion 2004 only - Sep 22 1:00 0 S
-
-# The proposed law agreed upon by the Knesset Interior Committee on
-# 2005-02-14 is that, for 2005 and beyond, DST starts at 02:00 the
-# last Friday before April 2nd (i.e. the last Friday in March or April
-# 1st itself if it falls on a Friday) and ends at 02:00 on the Saturday
-# night _before_ the fast of Yom Kippur.
-#
-# Those who can read Hebrew can view the announcement at:
-#
-# ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2005+beyond.ps
-
-# From Paul Eggert (2005-02-22):
-# I used Ephraim Silverberg's dst-israel.el program
-# <ftp://ftp.cs.huji.ac.il/pub/tz/software/dst-israel.el> (2005-02-20)
-# along with Ed Reingold's cal-hebrew in GNU Emacs 21.4,
-# to generate the transitions in this list.
-# (I replaced "lastFri" with "Fri>=26" by hand.)
-# The spring transitions below all correspond to the following Rule:
-#
-# Rule Zion 2005 max - Mar Fri>=26 2:00 1:00 D
-#
-# but older zic implementations (e.g., Solaris 8) do not support
-# "Fri>=26" to mean April 1 in years like 2005, so for now we list the
-# springtime transitions explicitly.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Zion 2005 only - Apr 1 2:00 1:00 D
-Rule Zion 2005 only - Oct 9 2:00 0 S
-Rule Zion 2006 2010 - Mar Fri>=26 2:00 1:00 D
-Rule Zion 2006 only - Oct 1 2:00 0 S
-Rule Zion 2007 only - Sep 16 2:00 0 S
-Rule Zion 2008 only - Oct 5 2:00 0 S
-Rule Zion 2009 only - Sep 27 2:00 0 S
-Rule Zion 2010 only - Sep 12 2:00 0 S
-Rule Zion 2011 only - Apr 1 2:00 1:00 D
-Rule Zion 2011 only - Oct 2 2:00 0 S
-Rule Zion 2012 2015 - Mar Fri>=26 2:00 1:00 D
-Rule Zion 2012 only - Sep 23 2:00 0 S
-Rule Zion 2013 only - Sep 8 2:00 0 S
-Rule Zion 2014 only - Sep 28 2:00 0 S
-Rule Zion 2015 only - Sep 20 2:00 0 S
-Rule Zion 2016 only - Apr 1 2:00 1:00 D
-Rule Zion 2016 only - Oct 9 2:00 0 S
-Rule Zion 2017 2021 - Mar Fri>=26 2:00 1:00 D
-Rule Zion 2017 only - Sep 24 2:00 0 S
-Rule Zion 2018 only - Sep 16 2:00 0 S
-Rule Zion 2019 only - Oct 6 2:00 0 S
-Rule Zion 2020 only - Sep 27 2:00 0 S
-Rule Zion 2021 only - Sep 12 2:00 0 S
-Rule Zion 2022 only - Apr 1 2:00 1:00 D
-Rule Zion 2022 only - Oct 2 2:00 0 S
-Rule Zion 2023 2032 - Mar Fri>=26 2:00 1:00 D
-Rule Zion 2023 only - Sep 24 2:00 0 S
-Rule Zion 2024 only - Oct 6 2:00 0 S
-Rule Zion 2025 only - Sep 28 2:00 0 S
-Rule Zion 2026 only - Sep 20 2:00 0 S
-Rule Zion 2027 only - Oct 10 2:00 0 S
-Rule Zion 2028 only - Sep 24 2:00 0 S
-Rule Zion 2029 only - Sep 16 2:00 0 S
-Rule Zion 2030 only - Oct 6 2:00 0 S
-Rule Zion 2031 only - Sep 21 2:00 0 S
-Rule Zion 2032 only - Sep 12 2:00 0 S
-Rule Zion 2033 only - Apr 1 2:00 1:00 D
-Rule Zion 2033 only - Oct 2 2:00 0 S
-Rule Zion 2034 2037 - Mar Fri>=26 2:00 1:00 D
-Rule Zion 2034 only - Sep 17 2:00 0 S
-Rule Zion 2035 only - Oct 7 2:00 0 S
-Rule Zion 2036 only - Sep 28 2:00 0 S
-Rule Zion 2037 only - Sep 13 2:00 0 S
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Jerusalem 2:20:56 - LMT 1880
- 2:20:40 - JMT 1918 # Jerusalem Mean Time?
- 2:00 Zion I%sT
-
-
-
-###############################################################################
-
-# Japan
-
-# `9:00' and `JST' is from Guy Harris.
-
-# From Paul Eggert (1995-03-06):
-# Today's _Asahi Evening News_ (page 4) reports that Japan had
-# daylight saving between 1948 and 1951, but ``the system was discontinued
-# because the public believed it would lead to longer working hours.''
-
-# From Mayumi Negishi in the 2005-08-10 Japan Times
-# <http://www.japantimes.co.jp/cgi-bin/getarticle.pl5?nn20050810f2.htm>:
-# Occupation authorities imposed daylight-saving time on Japan on
-# [1948-05-01].... But lack of prior debate and the execution of
-# daylight-saving time just three days after the bill was passed generated
-# deep hatred of the concept.... The Diet unceremoniously passed a bill to
-# dump the unpopular system in October 1951, less than a month after the San
-# Francisco Peace Treaty was signed. (A government poll in 1951 showed 53%
-# of the Japanese wanted to scrap daylight-saving time, as opposed to 30% who
-# wanted to keep it.)
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that DST in Japan during those years was as follows:
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Japan 1948 only - May Sun>=1 2:00 1:00 D
-Rule Japan 1948 1951 - Sep Sat>=8 2:00 0 S
-Rule Japan 1949 only - Apr Sun>=1 2:00 1:00 D
-Rule Japan 1950 1951 - May Sun>=1 2:00 1:00 D
-# but the only locations using it (for birth certificates, presumably, since
-# their audience is astrologers) were US military bases. For now, assume
-# that for most purposes daylight-saving time was observed; otherwise, what
-# would have been the point of the 1951 poll?
-
-# From Hideyuki Suzuki (1998-11-09):
-# 'Tokyo' usually stands for the former location of Tokyo Astronomical
-# Observatory: E 139 44' 40".90 (9h 18m 58s.727), N 35 39' 16".0.
-# This data is from 'Rika Nenpyou (Chronological Scientific Tables) 1996'
-# edited by National Astronomical Observatory of Japan....
-# JST (Japan Standard Time) has been used since 1888-01-01 00:00 (JST).
-# The law is enacted on 1886-07-07.
-
-# From Hideyuki Suzuki (1998-11-16):
-# The ordinance No. 51 (1886) established "standard time" in Japan,
-# which stands for the time on E 135 degree.
-# In the ordinance No. 167 (1895), "standard time" was renamed to "central
-# standard time". And the same ordinance also established "western standard
-# time", which stands for the time on E 120 degree.... But "western standard
-# time" was abolished in the ordinance No. 529 (1937). In the ordinance No.
-# 167, there is no mention regarding for what place western standard time is
-# standard....
-#
-# I wrote "ordinance" above, but I don't know how to translate.
-# In Japanese it's "chokurei", which means ordinance from emperor.
-
-# Shanks & Pottenger claim JST in use since 1896, and that a few
-# places (e.g. Ishigaki) use +0800; go with Suzuki. Guess that all
-# ordinances took effect on Jan 1.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Tokyo 9:18:59 - LMT 1887 Dec 31 15:00u
- 9:00 - JST 1896
- 9:00 - CJT 1938
- 9:00 Japan J%sT
-# Since 1938, all Japanese possessions have been like Asia/Tokyo.
-
-# Jordan
-#
-# From <a href="http://star.arabia.com/990701/JO9.html">
-# Jordan Week (1999-07-01) </a> via Steffen Thorsen (1999-09-09):
-# Clocks in Jordan were forwarded one hour on Wednesday at midnight,
-# in accordance with the government's decision to implement summer time
-# all year round.
-#
-# From <a href="http://star.arabia.com/990930/JO9.html">
-# Jordan Week (1999-09-30) </a> via Steffen Thorsen (1999-11-09):
-# Winter time starts today Thursday, 30 September. Clocks will be turned back
-# by one hour. This is the latest government decision and it's final!
-# The decision was taken because of the increase in working hours in
-# government's departments from six to seven hours.
-#
-# From Paul Eggert (2005-11-22):
-# Starting 2003 transitions are from Steffen Thorsen's web site timeanddate.com.
-#
-# From Steffen Thorsen (2005-11-23):
-# For Jordan I have received multiple independent user reports every year
-# about DST end dates, as the end-rule is different every year.
-#
-# From Steffen Thorsen (2006-10-01), after a heads-up from Hilal Malawi:
-# http://www.petranews.gov.jo/nepras/2006/Sep/05/4000.htm
-# "Jordan will switch to winter time on Friday, October 27".
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Jordan 1973 only - Jun 6 0:00 1:00 S
-Rule Jordan 1973 1975 - Oct 1 0:00 0 -
-Rule Jordan 1974 1977 - May 1 0:00 1:00 S
-Rule Jordan 1976 only - Nov 1 0:00 0 -
-Rule Jordan 1977 only - Oct 1 0:00 0 -
-Rule Jordan 1978 only - Apr 30 0:00 1:00 S
-Rule Jordan 1978 only - Sep 30 0:00 0 -
-Rule Jordan 1985 only - Apr 1 0:00 1:00 S
-Rule Jordan 1985 only - Oct 1 0:00 0 -
-Rule Jordan 1986 1988 - Apr Fri>=1 0:00 1:00 S
-Rule Jordan 1986 1990 - Oct Fri>=1 0:00 0 -
-Rule Jordan 1989 only - May 8 0:00 1:00 S
-Rule Jordan 1990 only - Apr 27 0:00 1:00 S
-Rule Jordan 1991 only - Apr 17 0:00 1:00 S
-Rule Jordan 1991 only - Sep 27 0:00 0 -
-Rule Jordan 1992 only - Apr 10 0:00 1:00 S
-Rule Jordan 1992 1993 - Oct Fri>=1 0:00 0 -
-Rule Jordan 1993 1998 - Apr Fri>=1 0:00 1:00 S
-Rule Jordan 1994 only - Sep Fri>=15 0:00 0 -
-Rule Jordan 1995 1998 - Sep Fri>=15 0:00s 0 -
-Rule Jordan 1999 only - Jul 1 0:00s 1:00 S
-Rule Jordan 1999 2002 - Sep lastThu 0:00s 0 -
-Rule Jordan 2000 max - Mar lastThu 0:00s 1:00 S
-Rule Jordan 2003 only - Oct 24 0:00s 0 -
-Rule Jordan 2004 only - Oct 15 0:00s 0 -
-Rule Jordan 2005 only - Sep lastFri 0:00s 0 -
-Rule Jordan 2006 max - Oct lastFri 0:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Amman 2:23:44 - LMT 1931
- 2:00 Jordan EE%sT
-
-
-# Kazakhstan
-
-# From Paul Eggert (1996-11-22):
-# Andrew Evtichov (1996-04-13) writes that Kazakhstan
-# stayed in sync with Moscow after 1990, and that Aqtobe (formerly Aktyubinsk)
-# and Aqtau (formerly Shevchenko) are the largest cities in their zones.
-# Guess that Aqtau and Aqtobe diverged in 1995, since that's the first time
-# IATA SSIM mentions a third time zone in Kazakhstan.
-
-# From Paul Eggert (2006-03-22):
-# German Iofis, ELSI, Almaty (2001-10-09) reports that Kazakhstan uses
-# RussiaAsia rules, instead of switching at 00:00 as the IATA has it.
-# Go with Shanks & Pottenger, who have them always using RussiaAsia rules.
-# Also go with the following claims of Shanks & Pottenger:
-#
-# - Kazakhstan did not observe DST in 1991.
-# - Qyzylorda switched from +5:00 to +6:00 on 1992-01-19 02:00.
-# - Oral switched from +5:00 to +4:00 in spring 1989.
-
-# <a href="http://www.kazsociety.org.uk/news/2005/03/30.htm">
-# From Kazakhstan Embassy's News Bulletin #11 (2005-03-21):
-# </a>
-# The Government of Kazakhstan passed a resolution March 15 abolishing
-# daylight saving time citing lack of economic benefits and health
-# complications coupled with a decrease in productivity.
-#
-# From Branislav Kojic (in Astana) via Gwillim Law (2005-06-28):
-# ... what happened was that the former Kazakhstan Eastern time zone
-# was "blended" with the Central zone. Therefore, Kazakhstan now has
-# two time zones, and difference between them is one hour. The zone
-# closer to UTC is the former Western zone (probably still called the
-# same), encompassing four provinces in the west: Aqtobe, Atyrau,
-# Mangghystau, and West Kazakhstan. The other zone encompasses
-# everything else.... I guess that would make Kazakhstan time zones
-# de jure UTC+5 and UTC+6 respectively.
-
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-#
-# Almaty (formerly Alma-Ata), representing most locations in Kazakhstan
-Zone Asia/Almaty 5:07:48 - LMT 1924 May 2 # or Alma-Ata
- 5:00 - ALMT 1930 Jun 21 # Alma-Ata Time
- 6:00 RussiaAsia ALM%sT 1991
- 6:00 - ALMT 1992
- 6:00 RussiaAsia ALM%sT 2005 Mar 15
- 6:00 - ALMT
-# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.)
-Zone Asia/Qyzylorda 4:21:52 - LMT 1924 May 2
- 4:00 - KIZT 1930 Jun 21 # Kizilorda Time
- 5:00 - KIZT 1981 Apr 1
- 5:00 1:00 KIZST 1981 Oct 1
- 6:00 - KIZT 1982 Apr 1
- 5:00 RussiaAsia KIZ%sT 1991
- 5:00 - KIZT 1991 Dec 16 # independence
- 5:00 - QYZT 1992 Jan 19 2:00
- 6:00 RussiaAsia QYZ%sT 2005 Mar 15
- 6:00 - QYZT
-# Aqtobe (aka Aktobe, formerly Akt'ubinsk)
-Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2
- 4:00 - AKTT 1930 Jun 21 # Aktyubinsk Time
- 5:00 - AKTT 1981 Apr 1
- 5:00 1:00 AKTST 1981 Oct 1
- 6:00 - AKTT 1982 Apr 1
- 5:00 RussiaAsia AKT%sT 1991
- 5:00 - AKTT 1991 Dec 16 # independence
- 5:00 RussiaAsia AQT%sT 2005 Mar 15 # Aqtobe Time
- 5:00 - AQTT
-# Mangghystau
-# Aqtau was not founded until 1963, but it represents an inhabited region,
-# so include time stamps before 1963.
-Zone Asia/Aqtau 3:21:04 - LMT 1924 May 2
- 4:00 - FORT 1930 Jun 21 # Fort Shevchenko T
- 5:00 - FORT 1963
- 5:00 - SHET 1981 Oct 1 # Shevchenko Time
- 6:00 - SHET 1982 Apr 1
- 5:00 RussiaAsia SHE%sT 1991
- 5:00 - SHET 1991 Dec 16 # independence
- 5:00 RussiaAsia AQT%sT 1995 Mar lastSun 2:00 # Aqtau Time
- 4:00 RussiaAsia AQT%sT 2005 Mar 15
- 5:00 - AQTT
-# West Kazakhstan
-Zone Asia/Oral 3:25:24 - LMT 1924 May 2 # or Ural'sk
- 4:00 - URAT 1930 Jun 21 # Ural'sk time
- 5:00 - URAT 1981 Apr 1
- 5:00 1:00 URAST 1981 Oct 1
- 6:00 - URAT 1982 Apr 1
- 5:00 RussiaAsia URA%sT 1989 Mar 26 2:00
- 4:00 RussiaAsia URA%sT 1991
- 4:00 - URAT 1991 Dec 16 # independence
- 4:00 RussiaAsia ORA%sT 2005 Mar 15 # Oral Time
- 5:00 - ORAT
-
-# Kyrgyzstan (Kirgizstan)
-# Transitions through 1991 are from Shanks & Pottenger.
-
-# From Paul Eggert (2005-08-15):
-# According to an article dated today in the Kyrgyzstan Development Gateway
-# <http://eng.gateway.kg/cgi-bin/page.pl?id=1&story_name=doc9979.shtml>
-# Kyrgyzstan is canceling the daylight saving time system. I take the article
-# to mean that they will leave their clocks at 6 hours ahead of UTC.
-# From Malik Abdugaliev (2005-09-21):
-# Our government cancels daylight saving time 6th of August 2005.
-# From 2005-08-12 our GMT-offset is +6, w/o any daylight saving.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Kyrgyz 1992 1996 - Apr Sun>=7 0:00s 1:00 S
-Rule Kyrgyz 1992 1996 - Sep lastSun 0:00 0 -
-Rule Kyrgyz 1997 2005 - Mar lastSun 2:30 1:00 S
-Rule Kyrgyz 1997 2004 - Oct lastSun 2:30 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Bishkek 4:58:24 - LMT 1924 May 2
- 5:00 - FRUT 1930 Jun 21 # Frunze Time
- 6:00 RussiaAsia FRU%sT 1991 Mar 31 2:00s
- 5:00 1:00 FRUST 1991 Aug 31 2:00 # independence
- 5:00 Kyrgyz KG%sT 2005 Aug 12 # Kyrgyzstan Time
- 6:00 - KGT
-
-###############################################################################
-
-# Korea (North and South)
-
-# From Annie I. Bang (2006-07-10) in
-# <http://www.koreaherald.co.kr/SITE/data/html_dir/2006/07/10/200607100012.asp>:
-# The Ministry of Commerce, Industry and Energy has already
-# commissioned a research project [to reintroduce DST] and has said
-# the system may begin as early as 2008.... Korea ran a daylight
-# saving program from 1949-61 but stopped it during the 1950-53 Korean War.
-
-# From Shanks & Pottenger:
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule ROK 1960 only - May 15 0:00 1:00 D
-Rule ROK 1960 only - Sep 13 0:00 0 S
-Rule ROK 1987 1988 - May Sun>=8 0:00 1:00 D
-Rule ROK 1987 1988 - Oct Sun>=8 0:00 0 S
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Seoul 8:27:52 - LMT 1890
- 8:30 - KST 1904 Dec
- 9:00 - KST 1928
- 8:30 - KST 1932
- 9:00 - KST 1954 Mar 21
- 8:00 ROK K%sT 1961 Aug 10
- 8:30 - KST 1968 Oct
- 9:00 ROK K%sT
-Zone Asia/Pyongyang 8:23:00 - LMT 1890
- 8:30 - KST 1904 Dec
- 9:00 - KST 1928
- 8:30 - KST 1932
- 9:00 - KST 1954 Mar 21
- 8:00 - KST 1961 Aug 10
- 9:00 - KST
-
-###############################################################################
-
-# Kuwait
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-# From the Arab Times (2007-03-14):
-# The Civil Service Commission (CSC) has approved a proposal forwarded
-# by MP Ahmad Baqer on implementing the daylight saving time (DST) in
-# Kuwait starting from April until the end of Sept this year, reports Al-Anba.
-# <http://www.arabtimesonline.com/arabtimes/kuwait/Viewdet.asp?ID=9950>.
-# From Paul Eggert (2007-03-29):
-# We don't know the details, or whether the approval means it'll happen,
-# so for now we assume no DST.
-Zone Asia/Kuwait 3:11:56 - LMT 1950
- 3:00 - AST
-
-# Laos
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Vientiane 6:50:24 - LMT 1906 Jun 9 # or Viangchan
- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT?
- 7:00 - ICT 1912 May
- 8:00 - ICT 1931 May
- 7:00 - ICT
-
-# Lebanon
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Lebanon 1920 only - Mar 28 0:00 1:00 S
-Rule Lebanon 1920 only - Oct 25 0:00 0 -
-Rule Lebanon 1921 only - Apr 3 0:00 1:00 S
-Rule Lebanon 1921 only - Oct 3 0:00 0 -
-Rule Lebanon 1922 only - Mar 26 0:00 1:00 S
-Rule Lebanon 1922 only - Oct 8 0:00 0 -
-Rule Lebanon 1923 only - Apr 22 0:00 1:00 S
-Rule Lebanon 1923 only - Sep 16 0:00 0 -
-Rule Lebanon 1957 1961 - May 1 0:00 1:00 S
-Rule Lebanon 1957 1961 - Oct 1 0:00 0 -
-Rule Lebanon 1972 only - Jun 22 0:00 1:00 S
-Rule Lebanon 1972 1977 - Oct 1 0:00 0 -
-Rule Lebanon 1973 1977 - May 1 0:00 1:00 S
-Rule Lebanon 1978 only - Apr 30 0:00 1:00 S
-Rule Lebanon 1978 only - Sep 30 0:00 0 -
-Rule Lebanon 1984 1987 - May 1 0:00 1:00 S
-Rule Lebanon 1984 1991 - Oct 16 0:00 0 -
-Rule Lebanon 1988 only - Jun 1 0:00 1:00 S
-Rule Lebanon 1989 only - May 10 0:00 1:00 S
-Rule Lebanon 1990 1992 - May 1 0:00 1:00 S
-Rule Lebanon 1992 only - Oct 4 0:00 0 -
-Rule Lebanon 1993 max - Mar lastSun 0:00 1:00 S
-Rule Lebanon 1993 1998 - Sep lastSun 0:00 0 -
-Rule Lebanon 1999 max - Oct lastSun 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Beirut 2:22:00 - LMT 1880
- 2:00 Lebanon EE%sT
-
-# Malaysia
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule NBorneo 1935 1941 - Sep 14 0:00 0:20 TS # one-Third Summer
-Rule NBorneo 1935 1941 - Dec 14 0:00 0 -
-#
-# peninsular Malaysia
-# The data here are taken from Mok Ly Yng (2003-10-30)
-# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Kuala_Lumpur 6:46:46 - LMT 1901 Jan 1
- 6:55:25 - SMT 1905 Jun 1 # Singapore M.T.
- 7:00 - MALT 1933 Jan 1 # Malaya Time
- 7:00 0:20 MALST 1936 Jan 1
- 7:20 - MALT 1941 Sep 1
- 7:30 - MALT 1942 Feb 16
- 9:00 - JST 1945 Sep 12
- 7:30 - MALT 1982 Jan 1
- 8:00 - MYT # Malaysia Time
-# Sabah & Sarawak
-# From Paul Eggert (2006-03-22):
-# The data here are mostly from Shanks & Pottenger, but the 1942, 1945 and 1982
-# transition dates are from Mok Ly Yng.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Kuching 7:21:20 - LMT 1926 Mar
- 7:30 - BORT 1933 # Borneo Time
- 8:00 NBorneo BOR%sT 1942 Feb 16
- 9:00 - JST 1945 Sep 12
- 8:00 - BORT 1982 Jan 1
- 8:00 - MYT
-
-# Maldives
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Indian/Maldives 4:54:00 - LMT 1880 # Male
- 4:54:00 - MMT 1960 # Male Mean Time
- 5:00 - MVT # Maldives Time
-
-# Mongolia
-
-# Shanks & Pottenger say that Mongolia has three time zones, but
-# usno1995 and the CIA map Standard Time Zones of the World (2005-03)
-# both say that it has just one.
-
-# From Oscar van Vlijmen (1999-12-11):
-# <a href="http://www.mongoliatourism.gov.mn/general.htm">
-# General Information Mongolia
-# </a> (1999-09)
-# "Time: Mongolia has two time zones. Three westernmost provinces of
-# Bayan-Ulgii, Uvs, and Hovd are one hour earlier than the capital city, and
-# the rest of the country follows the Ulaanbaatar time, which is UTC/GMT plus
-# eight hours."
-
-# From Rives McDow (1999-12-13):
-# Mongolia discontinued the use of daylight savings time in 1999; 1998
-# being the last year it was implemented. The dates of implementation I am
-# unsure of, but most probably it was similar to Russia, except for the time
-# of implementation may have been different....
-# Some maps in the past have indicated that there was an additional time
-# zone in the eastern part of Mongolia, including the provinces of Dornod,
-# Suhbaatar, and possibly Khentij.
-
-# From Paul Eggert (1999-12-15):
-# Naming and spelling is tricky in Mongolia.
-# We'll use Hovd (also spelled Chovd and Khovd) to represent the west zone;
-# the capital of the Hovd province is sometimes called Hovd, sometimes Dund-Us,
-# and sometimes Jirgalanta (with variant spellings), but the name Hovd
-# is good enough for our purposes.
-
-# From Rives McDow (2001-05-13):
-# In addition to Mongolia starting daylight savings as reported earlier
-# (adopted DST on 2001-04-27 02:00 local time, ending 2001-09-28),
-# there are three time zones.
-#
-# Provinces [at 7:00]: Bayan-ulgii, Uvs, Khovd, Zavkhan, Govi-Altai
-# Provinces [at 8:00]: Khovsgol, Bulgan, Arkhangai, Khentii, Tov,
-# Bayankhongor, Ovorkhangai, Dundgovi, Dornogovi, Omnogovi
-# Provinces [at 9:00]: Dornod, Sukhbaatar
-#
-# [The province of Selenge is omitted from the above lists.]
-
-# From Ganbold Ts., Ulaanbaatar (2004-04-17):
-# Daylight saving occurs at 02:00 local time last Saturday of March.
-# It will change back to normal at 02:00 local time last Saturday of
-# September.... As I remember this rule was changed in 2001.
-#
-# From Paul Eggert (2004-04-17):
-# For now, assume Rives McDow's informant got confused about Friday vs
-# Saturday, and that his 2001 dates should have 1 added to them.
-
-# From Paul Eggert (2005-07-26):
-# We have wildly conflicting information about Mongolia's time zones.
-# Bill Bonnet (2005-05-19) reports that the US Embassy in Ulaanbaatar says
-# there is only one time zone and that DST is observed, citing Microsoft
-# Windows XP as the source. Risto Nykanen (2005-05-16) reports that
-# travelmongolia.org says there are two time zones (UTC+7, UTC+8) with no DST.
-# Oscar van Vlijmen (2005-05-20) reports that the Mongolian Embassy in
-# Washington, DC says there are two time zones, with DST observed.
-# He also found
-# <http://ubpost.mongolnews.mn/index.php?subaction=showcomments&id=1111634894&archive=&start_from=&ucat=1&>
-# which also says that there is DST, and which has a comment by "Toddius"
-# (2005-03-31 06:05 +0700) saying "Mongolia actually has 3.5 time zones.
-# The West (OLGII) is +7 GMT, most of the country is ULAT is +8 GMT
-# and some Eastern provinces are +9 GMT but Sukhbaatar Aimag is SUHK +8.5 GMT.
-# The SUKH timezone is new this year, it is one of the few things the
-# parliament passed during the tumultuous winter session."
-# For now, let's ignore this information, until we have more confirmation.
-
-# From Ganbold Ts. (2007-02-26):
-# Parliament of Mongolia has just changed the daylight-saving rule in February.
-# They decided not to adopt daylight-saving time....
-# http://www.mongolnews.mn/index.php?module=unuudur&sec=view&id=15742
-
-# From Deborah Goldsmith (2008-03-30):
-# We received a bug report claiming that the tz database UTC offset for
-# Asia/Choibalsan (GMT+09:00) is incorrect, and that it should be GMT
-# +08:00 instead. Different sources appear to disagree with the tz
-# database on this, e.g.:
-#
-# <a href="http://www.timeanddate.com/worldclock/city.html?n=1026">
-# http://www.timeanddate.com/worldclock/city.html?n=1026
-# </a>
-# <a href="http://www.worldtimeserver.com/current_time_in_MN.aspx">
-# http://www.worldtimeserver.com/current_time_in_MN.aspx
-# </a>
-#
-# both say GMT+08:00.
-
-# From Steffen Thorsen (2008-03-31):
-# eznis airways, which operates several domestic flights, has a flight
-# schedule here:
-# <a href="http://www.eznis.com/Container.jsp?id=112">
-# http://www.eznis.com/Container.jsp?id=112
-# </a>
-# (click the English flag for English)
-#
-# There it appears that flights between Choibalsan and Ulaanbatar arrive
-# about 1:35 - 1:50 hours later in local clock time, no matter the
-# direction, while Ulaanbaatar-Khvod takes 2 hours in the Eastern
-# direction and 3:35 back, which indicates that Ulaanbatar and Khvod are
-# in different time zones (like we know about), while Choibalsan and
-# Ulaanbatar are in the same time zone (correction needed).
-
-# From Arthur David Olson (2008-05-19):
-# Assume that Choibalsan is indeed offset by 8:00.
-# XXX--in the absence of better information, assume that transition
-# was at the start of 2008-03-31 (the day of Steffen Thorsen's report);
-# this is almost surely wrong.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Mongol 1983 1984 - Apr 1 0:00 1:00 S
-Rule Mongol 1983 only - Oct 1 0:00 0 -
-# Shanks & Pottenger and IATA SSIM say 1990s switches occurred at 00:00,
-# but McDow says the 2001 switches occurred at 02:00. Also, IATA SSIM
-# (1996-09) says 1996-10-25. Go with Shanks & Pottenger through 1998.
-#
-# Shanks & Pottenger say that the Sept. 1984 through Sept. 1990 switches
-# in Choibalsan (more precisely, in Dornod and Sukhbaatar) took place
-# at 02:00 standard time, not at 00:00 local time as in the rest of
-# the country. That would be odd, and possibly is a result of their
-# correction of 02:00 (in the previous edition) not being done correctly
-# in the latest edition; so ignore it for now.
-
-Rule Mongol 1985 1998 - Mar lastSun 0:00 1:00 S
-Rule Mongol 1984 1998 - Sep lastSun 0:00 0 -
-# IATA SSIM (1999-09) says Mongolia no longer observes DST.
-Rule Mongol 2001 only - Apr lastSat 2:00 1:00 S
-Rule Mongol 2001 2006 - Sep lastSat 2:00 0 -
-Rule Mongol 2002 2006 - Mar lastSat 2:00 1:00 S
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-# Hovd, a.k.a. Chovd, Dund-Us, Dzhargalant, Khovd, Jirgalanta
-Zone Asia/Hovd 6:06:36 - LMT 1905 Aug
- 6:00 - HOVT 1978 # Hovd Time
- 7:00 Mongol HOV%sT
-# Ulaanbaatar, a.k.a. Ulan Bataar, Ulan Bator, Urga
-Zone Asia/Ulaanbaatar 7:07:32 - LMT 1905 Aug
- 7:00 - ULAT 1978 # Ulaanbaatar Time
- 8:00 Mongol ULA%sT
-# Choibalsan, a.k.a. Bajan Tuemen, Bajan Tumen, Chojbalsan,
-# Choybalsan, Sanbejse, Tchoibalsan
-Zone Asia/Choibalsan 7:38:00 - LMT 1905 Aug
- 7:00 - ULAT 1978
- 8:00 - ULAT 1983 Apr
- 9:00 Mongol CHO%sT 2008 Mar 31 # Choibalsan Time
- 8:00 Mongol CHO%sT
-
-# Nepal
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Katmandu 5:41:16 - LMT 1920
- 5:30 - IST 1986
- 5:45 - NPT # Nepal Time
-
-# Oman
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Muscat 3:54:20 - LMT 1920
- 4:00 - GST
-
-# Pakistan
-
-# From Rives McDow (2002-03-13):
-# I have been advised that Pakistan has decided to adopt dst on a
-# TRIAL basis for one year, starting 00:01 local time on April 7, 2002
-# and ending at 00:01 local time October 6, 2002. This is what I was
-# told, but I believe that the actual time of change may be 00:00; the
-# 00:01 was to make it clear which day it was on.
-
-# From Paul Eggert (2002-03-15):
-# Jesper Norgaard found this URL:
-# http://www.pak.gov.pk/public/news/app/app06_dec.htm
-# (dated 2001-12-06) which says that the Cabinet adopted a scheme "to
-# advance the clocks by one hour on the night between the first
-# Saturday and Sunday of April and revert to the original position on
-# 15th October each year". This agrees with McDow's 04-07 at 00:00,
-# but disagrees about the October transition, and makes it sound like
-# it's not on a trial basis. Also, the "between the first Saturday
-# and Sunday of April" phrase, if taken literally, means that the
-# transition takes place at 00:00 on the first Sunday on or after 04-02.
-
-# From Paul Eggert (2003-02-09):
-# DAWN <http://www.dawn.com/2002/10/06/top13.htm> reported on 2002-10-05
-# that 2002 DST ended that day at midnight. Go with McDow for now.
-
-# From Steffen Thorsen (2003-03-14):
-# According to http://www.dawn.com/2003/03/07/top15.htm
-# there will be no DST in Pakistan this year:
-#
-# ISLAMABAD, March 6: Information and Media Development Minister Sheikh
-# Rashid Ahmed on Thursday said the cabinet had reversed a previous
-# decision to advance clocks by one hour in summer and put them back by
-# one hour in winter with the aim of saving light hours and energy.
-#
-# The minister told a news conference that the experiment had rather
-# shown 8 per cent higher consumption of electricity.
-
-# From Alex Krivenyshev (2008-05-15):
-#
-# Here is an article that Pakistan plan to introduce Daylight Saving Time
-# on June 1, 2008 for 3 months.
-#
-# "... The federal cabinet on Wednesday announced a new conservation plan to help
-# reduce load shedding by approving the closure of commercial centres at 9pm and
-# moving clocks forward by one hour for the next three months.
-# ...."
-#
-# <a href="http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html">
-# http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html
-# </a>
-# OR
-# <a href="http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4">
-# http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4
-# </a>
-
-# From Arthur David Olson (2008-05-19):
-# XXX--midnight transitions is a guess; 2008 only is a guess.
-
-# From Alexander Krivenyshev (2008-08-28):
-# Pakistan government has decided to keep the watches one-hour advanced
-# for another 2 months--plan to return to Standard Time on October 31
-# instead of August 31.
-#
-# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan02.html">
-# http://www.worldtimezone.com/dst_news/dst_news_pakistan02.html
-# </a>
-# OR
-# <a href="http://dailymailnews.com/200808/28/news/dmbrn03.html">
-# http://dailymailnews.com/200808/28/news/dmbrn03.html
-# </a>
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Pakistan 2002 only - Apr Sun>=2 0:01 1:00 S
-Rule Pakistan 2002 only - Oct Sun>=2 0:01 0 -
-Rule Pakistan 2008 only - Jun 1 0:00 1:00 S
-Rule Pakistan 2008 only - Nov 1 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Karachi 4:28:12 - LMT 1907
- 5:30 - IST 1942 Sep
- 5:30 1:00 IST 1945 Oct 15
- 5:30 - IST 1951 Sep 30
- 5:00 - KART 1971 Mar 26 # Karachi Time
- 5:00 Pakistan PK%sT # Pakistan Time
-
-# Palestine
-
-# From Amos Shapir (1998-02-15):
-#
-# From 1917 until 1948-05-15, all of Palestine, including the parts now
-# known as the Gaza Strip and the West Bank, was under British rule.
-# Therefore the rules given for Israel for that period, apply there too...
-#
-# The Gaza Strip was under Egyptian rule between 1948-05-15 until 1967-06-05
-# (except a short occupation by Israel from 1956-11 till 1957-03, but no
-# time zone was affected then). It was never formally annexed to Egypt,
-# though.
-#
-# The rest of Palestine was under Jordanian rule at that time, formally
-# annexed in 1950 as the West Bank (and the word "Trans" was dropped from
-# the country's previous name of "the Hashemite Kingdom of the
-# Trans-Jordan"). So the rules for Jordan for that time apply. Major
-# towns in that area are Nablus (Shchem), El-Halil (Hebron), Ramallah, and
-# East Jerusalem.
-#
-# Both areas were occupied by Israel in June 1967, but not annexed (except
-# for East Jerusalem). They were on Israel time since then; there might
-# have been a Military Governor's order about time zones, but I'm not aware
-# of any (such orders may have been issued semi-annually whenever summer
-# time was in effect, but maybe the legal aspect of time was just neglected).
-#
-# The Palestinian Authority was established in 1993, and got hold of most
-# towns in the West Bank and Gaza by 1995. I know that in order to
-# demonstrate...independence, they have been switching to
-# summer time and back on a different schedule than Israel's, but I don't
-# know when this was started, or what algorithm is used (most likely the
-# Jordanian one).
-#
-# To summarize, the table should probably look something like that:
-#
-# Area \ when | 1918-1947 | 1948-1967 | 1967-1995 | 1996-
-# ------------+-----------+-----------+-----------+-----------
-# Israel | Zion | Zion | Zion | Zion
-# West bank | Zion | Jordan | Zion | Jordan
-# Gaza | Zion | Egypt | Zion | Jordan
-#
-# I guess more info may be available from the PA's web page (if/when they
-# have one).
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that Gaza did not observe DST until 1957, but go
-# with Shapir and assume that it observed DST from 1940 through 1947,
-# and that it used Jordanian rules starting in 1996.
-# We don't yet need a separate entry for the West Bank, since
-# the only differences between it and Gaza that we know about
-# occurred before our cutoff date of 1970.
-# However, as we get more information, we may need to add entries
-# for parts of the West Bank as they transitioned from Israel's rules
-# to Palestine's rules. If you have more info about this, please
-# send it to tz@elsie.nci.nih.gov for incorporation into future editions.
-
-# From IINS News Service - Israel - 1998-03-23 10:38:07 Israel time,
-# forwarded by Ephraim Silverberg:
-#
-# Despite the fact that Israel changed over to daylight savings time
-# last week, the PLO Authority (PA) has decided not to turn its clocks
-# one-hour forward at this time. As a sign of independence from Israeli rule,
-# the PA has decided to implement DST in April.
-
-# From Paul Eggert (1999-09-20):
-# Daoud Kuttab writes in
-# <a href="http://www.jpost.com/com/Archive/22.Apr.1999/Opinion/Article-2.html">
-# Holiday havoc
-# </a> (Jerusalem Post, 1999-04-22) that
-# the Palestinian National Authority changed to DST on 1999-04-15.
-# I vaguely recall that they switch back in October (sorry, forgot the source).
-# For now, let's assume that the spring switch was at 24:00,
-# and that they switch at 0:00 on the 3rd Fridays of April and October.
-
-# From Paul Eggert (2005-11-22):
-# Starting 2004 transitions are from Steffen Thorsen's web site timeanddate.com.
-
-# From Steffen Thorsen (2005-11-23):
-# A user from Gaza reported that Gaza made the change early because of
-# the Ramadan. Next year Ramadan will be even earlier, so I think
-# there is a good chance next year's end date will be around two weeks
-# earlier--the same goes for Jordan.
-
-# From Steffen Thorsen (2006-08-17):
-# I was informed by a user in Bethlehem that in Bethlehem it started the
-# same day as Israel, and after checking with other users in the area, I
-# was informed that they started DST one day after Israel. I was not
-# able to find any authoritative sources at the time, nor details if
-# Gaza changed as well, but presumed Gaza to follow the same rules as
-# the West Bank.
-
-# From Steffen Thorsen (2006-09-26):
-# according to the Palestine News Network (2006-09-19):
-# http://english.pnn.ps/index.php?option=com_content&task=view&id=596&Itemid=5
-# > The Council of Ministers announced that this year its winter schedule
-# > will begin early, as of midnight Thursday. It is also time to turn
-# > back the clocks for winter. Friday will begin an hour late this week.
-# I guess it is likely that next year's date will be moved as well,
-# because of the Ramadan.
-
-# From Jesper Norgaard Welen (2007-09-18):
-# According to Steffen Thorsen's web site the Gaza Strip and the rest of the
-# Palestinian territories left DST early on 13.th. of September at 2:00.
-
-# From Paul Eggert (2007-09-20):
-# My understanding is that Gaza and the West Bank disagree even over when
-# the weekend is (Thursday+Friday versus Friday+Saturday), so I'd be a bit
-# surprised if they agreed about DST. But for now, assume they agree.
-# For lack of better information, predict that future changes will be
-# the 2nd Thursday of September at 02:00.
-
-# From Alexander Krivenyshev (2008-08-28):
-# Here is an article, that Mideast running on different clocks at Ramadan.
-#
-# Gaza Strip (as Egypt) ended DST at midnight Thursday (Aug 28, 2008), while
-# the West Bank will end Daylight Saving Time at midnight Sunday (Aug 31, 2008).
-#
-# <a href="http://www.guardian.co.uk/world/feedarticle/7759001">
-# http://www.guardian.co.uk/world/feedarticle/7759001
-# </a>
-# <a href="http://www.abcnews.go.com/International/wireStory?id=5676087">
-# http://www.abcnews.go.com/International/wireStory?id=5676087
-# </a>
-# or
-# <a href="http://www.worldtimezone.com/dst_news/dst_news_gazastrip01.html">
-# http://www.worldtimezone.com/dst_news/dst_news_gazastrip01.html
-# </a>
-
-# The rules for Egypt are stolen from the `africa' file.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule EgyptAsia 1957 only - May 10 0:00 1:00 S
-Rule EgyptAsia 1957 1958 - Oct 1 0:00 0 -
-Rule EgyptAsia 1958 only - May 1 0:00 1:00 S
-Rule EgyptAsia 1959 1967 - May 1 1:00 1:00 S
-Rule EgyptAsia 1959 1965 - Sep 30 3:00 0 -
-Rule EgyptAsia 1966 only - Oct 1 3:00 0 -
-
-Rule Palestine 1999 2005 - Apr Fri>=15 0:00 1:00 S
-Rule Palestine 1999 2003 - Oct Fri>=15 0:00 0 -
-Rule Palestine 2004 only - Oct 1 1:00 0 -
-Rule Palestine 2005 only - Oct 4 2:00 0 -
-Rule Palestine 2006 max - Apr 1 0:00 1:00 S
-Rule Palestine 2006 only - Sep 22 0:00 0 -
-Rule Palestine 2007 only - Sep Thu>=8 2:00 0 -
-Rule Palestine 2008 max - Aug lastThu 2:00 0 -
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Gaza 2:17:52 - LMT 1900 Oct
- 2:00 Zion EET 1948 May 15
- 2:00 EgyptAsia EE%sT 1967 Jun 5
- 2:00 Zion I%sT 1996
- 2:00 Jordan EE%sT 1999
- 2:00 Palestine EE%sT
-
-# Paracel Is
-# no information
-
-# Philippines
-# On 1844-08-16, Narciso Claveria, governor-general of the
-# Philippines, issued a proclamation announcing that 1844-12-30 was to
-# be immediately followed by 1845-01-01. Robert H. van Gent has a
-# transcript of the decree in <http://www.phys.uu.nl/~vgent/idl/idl.htm>.
-# The rest of the data are from Shanks & Pottenger.
-
-# From Paul Eggert (2006-04-25):
-# Tomorrow's Manila Standard reports that the Philippines Department of
-# Trade and Industry is considering adopting DST this June when the
-# rainy season begins. See
-# <http://www.manilastandardtoday.com/?page=politics02_april26_2006>.
-# For now, we'll ignore this, since it's not definite and we lack details.
-#
-# From Jesper Norgaard Welen (2006-04-26):
-# ... claims that Philippines had DST last time in 1990:
-# http://story.philippinetimes.com/p.x/ct/9/id/145be20cc6b121c0/cid/3e5bbccc730d258c/
-# [a story dated 2006-04-25 by Cris Larano of Dow Jones Newswires,
-# but no details]
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Phil 1936 only - Nov 1 0:00 1:00 S
-Rule Phil 1937 only - Feb 1 0:00 0 -
-Rule Phil 1954 only - Apr 12 0:00 1:00 S
-Rule Phil 1954 only - Jul 1 0:00 0 -
-Rule Phil 1978 only - Mar 22 0:00 1:00 S
-Rule Phil 1978 only - Sep 21 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Manila -15:56:00 - LMT 1844 Dec 31
- 8:04:00 - LMT 1899 May 11
- 8:00 Phil PH%sT 1942 May
- 9:00 - JST 1944 Nov
- 8:00 Phil PH%sT
-
-# Qatar
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha
- 4:00 - GST 1972 Jun
- 3:00 - AST
-
-# Saudi Arabia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Riyadh 3:06:52 - LMT 1950
- 3:00 - AST
-
-# Singapore
-# The data here are taken from Mok Ly Yng (2003-10-30)
-# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Singapore 6:55:25 - LMT 1901 Jan 1
- 6:55:25 - SMT 1905 Jun 1 # Singapore M.T.
- 7:00 - MALT 1933 Jan 1 # Malaya Time
- 7:00 0:20 MALST 1936 Jan 1
- 7:20 - MALT 1941 Sep 1
- 7:30 - MALT 1942 Feb 16
- 9:00 - JST 1945 Sep 12
- 7:30 - MALT 1965 Aug 9 # independence
- 7:30 - SGT 1982 Jan 1 # Singapore Time
- 8:00 - SGT
-
-# Spratly Is
-# no information
-
-# Sri Lanka
-# From Paul Eggert (1996-09-03):
-# "Sri Lanka advances clock by an hour to avoid blackout"
-# (www.virtual-pc.com/lankaweb/news/items/240596-2.html, 1996-05-24,
-# no longer available as of 1999-08-17)
-# reported ``the country's standard time will be put forward by one hour at
-# midnight Friday (1830 GMT) `in the light of the present power crisis'.''
-#
-# From Dharmasiri Senanayake, Sri Lanka Media Minister (1996-10-24), as quoted
-# by Shamindra in
-# <a href="news:54rka5$m5h@mtinsc01-mgt.ops.worldnet.att.net">
-# Daily News - Hot News Section (1996-10-26)
-# </a>:
-# With effect from 12.30 a.m. on 26th October 1996
-# Sri Lanka will be six (06) hours ahead of GMT.
-
-# From Jesper Norgaard Welen (2006-04-14), quoting Sri Lanka News Online
-# <http://news.sinhalaya.com/wmview.php?ArtID=11002> (2006-04-13):
-# 0030 hrs on April 15, 2006 (midnight of April 14, 2006 +30 minutes)
-# at present, become 2400 hours of April 14, 2006 (midnight of April 14, 2006).
-
-# From Peter Apps and Ranga Sirila of Reuters (2006-04-12) in:
-# <http://today.reuters.co.uk/news/newsArticle.aspx?type=scienceNews&storyID=2006-04-12T172228Z_01_COL295762_RTRIDST_0_SCIENCE-SRILANKA-TIME-DC.XML>
-# [The Tamil Tigers] never accepted the original 1996 time change and simply
-# kept their clocks set five and a half hours ahead of Greenwich Mean
-# Time (GMT), in line with neighbor India.
-# From Paul Eggert (2006-04-18):
-# People who live in regions under Tamil control can use [TZ='Asia/Kolkata'],
-# as that zone has agreed with the Tamil areas since our cutoff date of 1970.
-
-# From K Sethu (2006-04-25):
-# I think the abbreviation LKT originated from the world of computers at
-# the time of or subsequent to the time zone changes by SL Government
-# twice in 1996 and probably SL Government or its standardization
-# agencies never declared an abbreviation as a national standard.
-#
-# I recollect before the recent change the government annoucemments
-# mentioning it as simply changing Sri Lanka Standard Time or Sri Lanka
-# Time and no mention was made about the abbreviation.
-#
-# If we look at Sri Lanka Department of Government's "Official News
-# Website of Sri Lanka" ... http://www.news.lk/ we can see that they
-# use SLT as abbreviation in time stamp at the beginning of each news
-# item....
-#
-# Within Sri Lanka I think LKT is well known among computer users and
-# adminsitrators. In my opinion SLT may not be a good choice because the
-# nation's largest telcom / internet operator Sri Lanka Telcom is well
-# known by that abbreviation - simply as SLT (there IP domains are
-# slt.lk and sltnet.lk).
-#
-# But if indeed our government has adopted SLT as standard abbreviation
-# (that we have not known so far) then it is better that it be used for
-# all computers.
-
-# From Paul Eggert (2006-04-25):
-# One possibility is that we wait for a bit for the dust to settle down
-# and then see what people actually say in practice.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Colombo 5:19:24 - LMT 1880
- 5:19:32 - MMT 1906 # Moratuwa Mean Time
- 5:30 - IST 1942 Jan 5
- 5:30 0:30 IHST 1942 Sep
- 5:30 1:00 IST 1945 Oct 16 2:00
- 5:30 - IST 1996 May 25 0:00
- 6:30 - LKT 1996 Oct 26 0:30
- 6:00 - LKT 2006 Apr 15 0:30
- 5:30 - IST
-
-# Syria
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Syria 1920 1923 - Apr Sun>=15 2:00 1:00 S
-Rule Syria 1920 1923 - Oct Sun>=1 2:00 0 -
-Rule Syria 1962 only - Apr 29 2:00 1:00 S
-Rule Syria 1962 only - Oct 1 2:00 0 -
-Rule Syria 1963 1965 - May 1 2:00 1:00 S
-Rule Syria 1963 only - Sep 30 2:00 0 -
-Rule Syria 1964 only - Oct 1 2:00 0 -
-Rule Syria 1965 only - Sep 30 2:00 0 -
-Rule Syria 1966 only - Apr 24 2:00 1:00 S
-Rule Syria 1966 1976 - Oct 1 2:00 0 -
-Rule Syria 1967 1978 - May 1 2:00 1:00 S
-Rule Syria 1977 1978 - Sep 1 2:00 0 -
-Rule Syria 1983 1984 - Apr 9 2:00 1:00 S
-Rule Syria 1983 1984 - Oct 1 2:00 0 -
-Rule Syria 1986 only - Feb 16 2:00 1:00 S
-Rule Syria 1986 only - Oct 9 2:00 0 -
-Rule Syria 1987 only - Mar 1 2:00 1:00 S
-Rule Syria 1987 1988 - Oct 31 2:00 0 -
-Rule Syria 1988 only - Mar 15 2:00 1:00 S
-Rule Syria 1989 only - Mar 31 2:00 1:00 S
-Rule Syria 1989 only - Oct 1 2:00 0 -
-Rule Syria 1990 only - Apr 1 2:00 1:00 S
-Rule Syria 1990 only - Sep 30 2:00 0 -
-Rule Syria 1991 only - Apr 1 0:00 1:00 S
-Rule Syria 1991 1992 - Oct 1 0:00 0 -
-Rule Syria 1992 only - Apr 8 0:00 1:00 S
-Rule Syria 1993 only - Mar 26 0:00 1:00 S
-Rule Syria 1993 only - Sep 25 0:00 0 -
-# IATA SSIM (1998-02) says 1998-04-02;
-# (1998-09) says 1999-03-29 and 1999-09-29; (1999-02) says 1999-04-02,
-# 2000-04-02, and 2001-04-02; (1999-09) says 2000-03-31 and 2001-03-31;
-# (2006) says 2006-03-31 and 2006-09-22;
-# for now ignore all these claims and go with Shanks & Pottenger,
-# except for the 2006-09-22 claim (which seems right for Ramadan).
-Rule Syria 1994 1996 - Apr 1 0:00 1:00 S
-Rule Syria 1994 2005 - Oct 1 0:00 0 -
-Rule Syria 1997 1998 - Mar lastMon 0:00 1:00 S
-Rule Syria 1999 2006 - Apr 1 0:00 1:00 S
-# From Stephen Colebourne (2006-09-18):
-# According to IATA data, Syria will change DST on 21st September [21:00 UTC]
-# this year [only].... This is probably related to Ramadan, like Egypt.
-Rule Syria 2006 only - Sep 22 0:00 0 -
-# From Paul Eggert (2007-03-29):
-# Today the AP reported "Syria will switch to summertime at midnight Thursday."
-# http://www.iht.com/articles/ap/2007/03/29/africa/ME-GEN-Syria-Time-Change.php
-Rule Syria 2007 only - Mar lastFri 0:00 1:00 S
-# From Jesper Norgard (2007-10-27):
-# The sister center ICARDA of my work CIMMYT is confirming that Syria DST will
-# not take place 1.st November at 0:00 o'clock but 1.st November at 24:00 or
-# rather Midnight between Thursday and Friday. This does make more sence than
-# having it between Wednesday and Thursday (two workdays in Syria) since the
-# weekend in Syria is not Saturday and Sunday, but Friday and Saturday. So now
-# it is implemented at midnight of the last workday before weekend...
-#
-# From Steffen Thorsen (2007-10-27):
-# Jesper Norgaard Welen wrote:
-#
-# > "Winter local time in Syria will be observed at midnight of Thursday 1
-# > November 2007, and the clock will be put back 1 hour."
-#
-# I found confirmation on this in this gov.sy-article (Arabic):
-# http://wehda.alwehda.gov.sy/_print_veiw.asp?FileName=12521710520070926111247
-#
-# which using Google's translate tools says:
-# Council of Ministers also approved the commencement of work on
-# identifying the winter time as of Friday, 2/11/2007 where the 60th
-# minute delay at midnight Thursday 1/11/2007.
-Rule Syria 2007 only - Nov Fri>=1 0:00 0 -
-
-# From Stephen Colebourne (2008-03-17):
-# For everyone's info, I saw an IATA time zone change for [Syria] for
-# this month (March 2008) in the last day or so...This is the data IATA
-# are now using:
-# Country Time Standard --- DST Start --- --- DST End --- DST
-# Name Zone Variation Time Date Time Date
-# Variation
-# Syrian Arab
-# Republic SY +0200 2200 03APR08 2100 30SEP08 +0300
-# 2200 02APR09 2100 30SEP09 +0300
-# 2200 01APR10 2100 30SEP10 +0300
-
-# From Arthur David Olson (2008-03-17):
-# Here's a link to English-language coverage by the Syrian Arab News
-# Agency (SANA)...
-# <a href="http://www.sana.sy/eng/21/2008/03/11/165173.htm">
-# http://www.sana.sy/eng/21/2008/03/11/165173.htm
-# </a>...which reads (in part) "The Cabinet approved the suggestion of the
-# Ministry of Electricity to begin daylight savings time on Friday April
-# 4th, advancing clocks one hour ahead on midnight of Thursday April 3rd."
-# Since Syria is two hours east of UTC, the 2200 and 2100 transition times
-# shown above match up with midnight in Syria.
-
-# From Arthur David Olson (2008-03-18):
-# My buest guess at a Syrian rule is "the Friday nearest April 1";
-# coding that involves either using a "Mar Fri>=29" construct that old time zone
-# compilers can't handle or having multiple Rules (a la Israel).
-# For now, use "Apr Fri>=1", and go with IATA on a uniform Sep 30 end.
-
-# From Steffen Thorsen (2008-10-07):
-# Syria has now officially decided to end DST on 2008-11-01 this year,
-# according to the following article in the Syrian Arab News Agency (SANA).
-#
-# The article is in Arabic, and seems to tell that they will go back to
-# winter time on 2008-11-01 at 00:00 local daylight time (delaying/setting
-# clocks back 60 minutes).
-#
-# <a href="http://sana.sy/ara/2/2008/10/07/195459.htm">
-# http://sana.sy/ara/2/2008/10/07/195459.htm
-# </a>
-
-Rule Syria 2008 max - Apr Fri>=1 0:00 1:00 S
-Rule Syria 2008 max - Nov 1 0:00 0 -
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq
- 2:00 Syria EE%sT
-
-# Tajikistan
-# From Shanks & Pottenger.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Dushanbe 4:35:12 - LMT 1924 May 2
- 5:00 - DUST 1930 Jun 21 # Dushanbe Time
- 6:00 RussiaAsia DUS%sT 1991 Mar 31 2:00s
- 5:00 1:00 DUSST 1991 Sep 9 2:00s
- 5:00 - TJT # Tajikistan Time
-
-# Thailand
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Bangkok 6:42:04 - LMT 1880
- 6:42:04 - BMT 1920 Apr # Bangkok Mean Time
- 7:00 - ICT
-
-# Turkmenistan
-# From Shanks & Pottenger.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Ashgabat 3:53:32 - LMT 1924 May 2 # or Ashkhabad
- 4:00 - ASHT 1930 Jun 21 # Ashkhabad Time
- 5:00 RussiaAsia ASH%sT 1991 Mar 31 2:00
- 4:00 RussiaAsia ASH%sT 1991 Oct 27 # independence
- 4:00 RussiaAsia TM%sT 1992 Jan 19 2:00
- 5:00 - TMT
-
-# United Arab Emirates
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Dubai 3:41:12 - LMT 1920
- 4:00 - GST
-
-# Uzbekistan
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Samarkand 4:27:12 - LMT 1924 May 2
- 4:00 - SAMT 1930 Jun 21 # Samarkand Time
- 5:00 - SAMT 1981 Apr 1
- 5:00 1:00 SAMST 1981 Oct 1
- 6:00 - TAST 1982 Apr 1 # Tashkent Time
- 5:00 RussiaAsia SAM%sT 1991 Sep 1 # independence
- 5:00 RussiaAsia UZ%sT 1992
- 5:00 - UZT
-Zone Asia/Tashkent 4:37:12 - LMT 1924 May 2
- 5:00 - TAST 1930 Jun 21 # Tashkent Time
- 6:00 RussiaAsia TAS%sT 1991 Mar 31 2:00
- 5:00 RussiaAsia TAS%sT 1991 Sep 1 # independence
- 5:00 RussiaAsia UZ%sT 1992
- 5:00 - UZT
-
-# Vietnam
-
-# From Arthur David Olson (2008-03-18):
-# The English-language name of Vietnam's most populous city is "Ho Chi Min City";
-# we use Ho_Chi_Minh below to avoid a name of more than 14 characters.
-
-# From Shanks & Pottenger:
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Ho_Chi_Minh 7:06:40 - LMT 1906 Jun 9
- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT?
- 7:00 - ICT 1912 May
- 8:00 - ICT 1931 May
- 7:00 - ICT
-
-# Yemen
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Asia/Aden 3:00:48 - LMT 1950
- 3:00 - AST
diff --git a/tools/zoneinfo/tzdata2008h/australasia b/tools/zoneinfo/tzdata2008h/australasia
deleted file mode 100644
index 41608cd..0000000
--- a/tools/zoneinfo/tzdata2008h/australasia
+++ /dev/null
@@ -1,1454 +0,0 @@
-# @(#)australasia 8.9
-# <pre>
-
-# This file also includes Pacific islands.
-
-# Notes are at the end of this file
-
-###############################################################################
-
-# Australia
-
-# Please see the notes below for the controversy about "EST" versus "AEST" etc.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Aus 1917 only - Jan 1 0:01 1:00 -
-Rule Aus 1917 only - Mar 25 2:00 0 -
-Rule Aus 1942 only - Jan 1 2:00 1:00 -
-Rule Aus 1942 only - Mar 29 2:00 0 -
-Rule Aus 1942 only - Sep 27 2:00 1:00 -
-Rule Aus 1943 1944 - Mar lastSun 2:00 0 -
-Rule Aus 1943 only - Oct 3 2:00 1:00 -
-# Go with Whitman and the Australian National Standards Commission, which
-# says W Australia didn't use DST in 1943/1944. Ignore Whitman's claim that
-# 1944/1945 was just like 1943/1944.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-# Northern Territory
-Zone Australia/Darwin 8:43:20 - LMT 1895 Feb
- 9:00 - CST 1899 May
- 9:30 Aus CST
-# Western Australia
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule AW 1974 only - Oct lastSun 2:00s 1:00 -
-Rule AW 1975 only - Mar Sun>=1 2:00s 0 -
-Rule AW 1983 only - Oct lastSun 2:00s 1:00 -
-Rule AW 1984 only - Mar Sun>=1 2:00s 0 -
-Rule AW 1991 only - Nov 17 2:00s 1:00 -
-Rule AW 1992 only - Mar Sun>=1 2:00s 0 -
-Rule AW 2006 only - Dec 3 2:00s 1:00 -
-Rule AW 2007 2009 - Mar lastSun 2:00s 0 -
-Rule AW 2007 2008 - Oct lastSun 2:00s 1:00 -
-Zone Australia/Perth 7:43:24 - LMT 1895 Dec
- 8:00 Aus WST 1943 Jul
- 8:00 AW WST
-Zone Australia/Eucla 8:35:28 - LMT 1895 Dec
- 8:45 Aus CWST 1943 Jul
- 8:45 AW CWST
-
-# Queensland
-#
-# From Alex Livingston (1996-11-01):
-# I have heard or read more than once that some resort islands off the coast
-# of Queensland chose to keep observing daylight-saving time even after
-# Queensland ceased to.
-#
-# From Paul Eggert (1996-11-22):
-# IATA SSIM (1993-02/1994-09) say that the Holiday Islands (Hayman, Lindeman,
-# Hamilton) observed DST for two years after the rest of Queensland stopped.
-# Hamilton is the largest, but there is also a Hamilton in Victoria,
-# so use Lindeman.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule AQ 1971 only - Oct lastSun 2:00s 1:00 -
-Rule AQ 1972 only - Feb lastSun 2:00s 0 -
-Rule AQ 1989 1991 - Oct lastSun 2:00s 1:00 -
-Rule AQ 1990 1992 - Mar Sun>=1 2:00s 0 -
-Rule Holiday 1992 1993 - Oct lastSun 2:00s 1:00 -
-Rule Holiday 1993 1994 - Mar Sun>=1 2:00s 0 -
-Zone Australia/Brisbane 10:12:08 - LMT 1895
- 10:00 Aus EST 1971
- 10:00 AQ EST
-Zone Australia/Lindeman 9:55:56 - LMT 1895
- 10:00 Aus EST 1971
- 10:00 AQ EST 1992 Jul
- 10:00 Holiday EST
-
-# South Australia
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule AS 1971 1985 - Oct lastSun 2:00s 1:00 -
-Rule AS 1986 only - Oct 19 2:00s 1:00 -
-Rule AS 1987 2007 - Oct lastSun 2:00s 1:00 -
-Rule AS 1972 only - Feb 27 2:00s 0 -
-Rule AS 1973 1985 - Mar Sun>=1 2:00s 0 -
-Rule AS 1986 1989 - Mar Sun>=15 2:00s 0 -
-Rule AS 1990 only - Mar Sun>=18 2:00s 0 -
-Rule AS 1991 only - Mar Sun>=1 2:00s 0 -
-Rule AS 1992 only - Mar Sun>=18 2:00s 0 -
-Rule AS 1993 only - Mar Sun>=1 2:00s 0 -
-Rule AS 1994 only - Mar Sun>=18 2:00s 0 -
-Rule AS 1995 2005 - Mar lastSun 2:00s 0 -
-Rule AS 2006 only - Apr Sun>=1 2:00s 0 -
-Rule AS 2007 only - Mar lastSun 2:00s 0 -
-Rule AS 2008 max - Apr Sun>=1 2:00s 0 -
-Rule AS 2008 max - Oct Sun>=1 2:00s 1:00 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Australia/Adelaide 9:14:20 - LMT 1895 Feb
- 9:00 - CST 1899 May
- 9:30 Aus CST 1971
- 9:30 AS CST
-
-# Tasmania
-#
-# From Paul Eggert (2005-08-16):
-# <http://www.bom.gov.au/climate/averages/tables/dst_times.shtml>
-# says King Island didn't observe DST from WWII until late 1971.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule AT 1967 only - Oct Sun>=1 2:00s 1:00 -
-Rule AT 1968 only - Mar lastSun 2:00s 0 -
-Rule AT 1968 1985 - Oct lastSun 2:00s 1:00 -
-Rule AT 1969 1971 - Mar Sun>=8 2:00s 0 -
-Rule AT 1972 only - Feb lastSun 2:00s 0 -
-Rule AT 1973 1981 - Mar Sun>=1 2:00s 0 -
-Rule AT 1982 1983 - Mar lastSun 2:00s 0 -
-Rule AT 1984 1986 - Mar Sun>=1 2:00s 0 -
-Rule AT 1986 only - Oct Sun>=15 2:00s 1:00 -
-Rule AT 1987 1990 - Mar Sun>=15 2:00s 0 -
-Rule AT 1987 only - Oct Sun>=22 2:00s 1:00 -
-Rule AT 1988 1990 - Oct lastSun 2:00s 1:00 -
-Rule AT 1991 1999 - Oct Sun>=1 2:00s 1:00 -
-Rule AT 1991 2005 - Mar lastSun 2:00s 0 -
-Rule AT 2000 only - Aug lastSun 2:00s 1:00 -
-Rule AT 2001 max - Oct Sun>=1 2:00s 1:00 -
-Rule AT 2006 only - Apr Sun>=1 2:00s 0 -
-Rule AT 2007 only - Mar lastSun 2:00s 0 -
-Rule AT 2008 max - Apr Sun>=1 2:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Australia/Hobart 9:49:16 - LMT 1895 Sep
- 10:00 - EST 1916 Oct 1 2:00
- 10:00 1:00 EST 1917 Feb
- 10:00 Aus EST 1967
- 10:00 AT EST
-Zone Australia/Currie 9:35:28 - LMT 1895 Sep
- 10:00 - EST 1916 Oct 1 2:00
- 10:00 1:00 EST 1917 Feb
- 10:00 Aus EST 1971 Jul
- 10:00 AT EST
-
-# Victoria
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule AV 1971 1985 - Oct lastSun 2:00s 1:00 -
-Rule AV 1972 only - Feb lastSun 2:00s 0 -
-Rule AV 1973 1985 - Mar Sun>=1 2:00s 0 -
-Rule AV 1986 1990 - Mar Sun>=15 2:00s 0 -
-Rule AV 1986 1987 - Oct Sun>=15 2:00s 1:00 -
-Rule AV 1988 1999 - Oct lastSun 2:00s 1:00 -
-Rule AV 1991 1994 - Mar Sun>=1 2:00s 0 -
-Rule AV 1995 2005 - Mar lastSun 2:00s 0 -
-Rule AV 2000 only - Aug lastSun 2:00s 1:00 -
-Rule AV 2001 2007 - Oct lastSun 2:00s 1:00 -
-Rule AV 2006 only - Apr Sun>=1 2:00s 0 -
-Rule AV 2007 only - Mar lastSun 2:00s 0 -
-Rule AV 2008 max - Apr Sun>=1 2:00s 0 -
-Rule AV 2008 max - Oct Sun>=1 2:00s 1:00 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Australia/Melbourne 9:39:52 - LMT 1895 Feb
- 10:00 Aus EST 1971
- 10:00 AV EST
-
-# New South Wales
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule AN 1971 1985 - Oct lastSun 2:00s 1:00 -
-Rule AN 1972 only - Feb 27 2:00s 0 -
-Rule AN 1973 1981 - Mar Sun>=1 2:00s 0 -
-Rule AN 1982 only - Apr Sun>=1 2:00s 0 -
-Rule AN 1983 1985 - Mar Sun>=1 2:00s 0 -
-Rule AN 1986 1989 - Mar Sun>=15 2:00s 0 -
-Rule AN 1986 only - Oct 19 2:00s 1:00 -
-Rule AN 1987 1999 - Oct lastSun 2:00s 1:00 -
-Rule AN 1990 1995 - Mar Sun>=1 2:00s 0 -
-Rule AN 1996 2005 - Mar lastSun 2:00s 0 -
-Rule AN 2000 only - Aug lastSun 2:00s 1:00 -
-Rule AN 2001 2007 - Oct lastSun 2:00s 1:00 -
-Rule AN 2006 only - Apr Sun>=1 2:00s 0 -
-Rule AN 2007 only - Mar lastSun 2:00s 0 -
-Rule AN 2008 max - Apr Sun>=1 2:00s 0 -
-Rule AN 2008 max - Oct Sun>=1 2:00s 1:00 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Australia/Sydney 10:04:52 - LMT 1895 Feb
- 10:00 Aus EST 1971
- 10:00 AN EST
-Zone Australia/Broken_Hill 9:25:48 - LMT 1895 Feb
- 10:00 - EST 1896 Aug 23
- 9:00 - CST 1899 May
- 9:30 Aus CST 1971
- 9:30 AN CST 2000
- 9:30 AS CST
-
-# Lord Howe Island
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule LH 1981 1984 - Oct lastSun 2:00 1:00 -
-Rule LH 1982 1985 - Mar Sun>=1 2:00 0 -
-Rule LH 1985 only - Oct lastSun 2:00 0:30 -
-Rule LH 1986 1989 - Mar Sun>=15 2:00 0 -
-Rule LH 1986 only - Oct 19 2:00 0:30 -
-Rule LH 1987 1999 - Oct lastSun 2:00 0:30 -
-Rule LH 1990 1995 - Mar Sun>=1 2:00 0 -
-Rule LH 1996 2005 - Mar lastSun 2:00 0 -
-Rule LH 2000 only - Aug lastSun 2:00 0:30 -
-Rule LH 2001 2007 - Oct lastSun 2:00 0:30 -
-Rule LH 2006 only - Apr Sun>=1 2:00 0 -
-Rule LH 2007 only - Mar lastSun 2:00 0 -
-Rule LH 2008 max - Apr Sun>=1 2:00 0 -
-Rule LH 2008 max - Oct Sun>=1 2:00 0:30 -
-Zone Australia/Lord_Howe 10:36:20 - LMT 1895 Feb
- 10:00 - EST 1981 Mar
- 10:30 LH LHST
-
-# Australian miscellany
-#
-# Ashmore Is, Cartier
-# no indigenous inhabitants; only seasonal caretakers
-# no times are set
-#
-# Coral Sea Is
-# no indigenous inhabitants; only meteorologists
-# no times are set
-#
-# Macquarie
-# permanent occupation (scientific station) since 1948;
-# sealing and penguin oil station operated 1888/1917
-# like Australia/Hobart
-
-# Christmas
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Indian/Christmas 7:02:52 - LMT 1895 Feb
- 7:00 - CXT # Christmas Island Time
-
-# Cook Is
-# From Shanks & Pottenger:
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Cook 1978 only - Nov 12 0:00 0:30 HS
-Rule Cook 1979 1991 - Mar Sun>=1 0:00 0 -
-Rule Cook 1979 1990 - Oct lastSun 0:00 0:30 HS
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Rarotonga -10:39:04 - LMT 1901 # Avarua
- -10:30 - CKT 1978 Nov 12 # Cook Is Time
- -10:00 Cook CK%sT
-
-# Cocos
-# These islands were ruled by the Ross family from about 1830 to 1978.
-# We don't know when standard time was introduced; for now, we guess 1900.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Indian/Cocos 6:27:40 - LMT 1900
- 6:30 - CCT # Cocos Islands Time
-
-# Fiji
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Fiji 1998 1999 - Nov Sun>=1 2:00 1:00 S
-Rule Fiji 1999 2000 - Feb lastSun 3:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Fiji 11:53:40 - LMT 1915 Oct 26 # Suva
- 12:00 Fiji FJ%sT # Fiji Time
-
-# French Polynesia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea
- -9:00 - GAMT # Gambier Time
-Zone Pacific/Marquesas -9:18:00 - LMT 1912 Oct
- -9:30 - MART # Marquesas Time
-Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete
- -10:00 - TAHT # Tahiti Time
-# Clipperton (near North America) is administered from French Polynesia;
-# it is uninhabited.
-
-# Guam
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Guam -14:21:00 - LMT 1844 Dec 31
- 9:39:00 - LMT 1901 # Agana
- 10:00 - GST 2000 Dec 23 # Guam
- 10:00 - ChST # Chamorro Standard Time
-
-# Kiribati
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki
- 12:00 - GILT # Gilbert Is Time
-Zone Pacific/Enderbury -11:24:20 - LMT 1901
- -12:00 - PHOT 1979 Oct # Phoenix Is Time
- -11:00 - PHOT 1995
- 13:00 - PHOT
-Zone Pacific/Kiritimati -10:29:20 - LMT 1901
- -10:40 - LINT 1979 Oct # Line Is Time
- -10:00 - LINT 1995
- 14:00 - LINT
-
-# N Mariana Is
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Saipan -14:17:00 - LMT 1844 Dec 31
- 9:43:00 - LMT 1901
- 9:00 - MPT 1969 Oct # N Mariana Is Time
- 10:00 - MPT 2000 Dec 23
- 10:00 - ChST # Chamorro Standard Time
-
-# Marshall Is
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Majuro 11:24:48 - LMT 1901
- 11:00 - MHT 1969 Oct # Marshall Islands Time
- 12:00 - MHT
-Zone Pacific/Kwajalein 11:09:20 - LMT 1901
- 11:00 - MHT 1969 Oct
- -12:00 - KWAT 1993 Aug 20 # Kwajalein Time
- 12:00 - MHT
-
-# Micronesia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Truk 10:07:08 - LMT 1901
- 10:00 - TRUT # Truk Time
-Zone Pacific/Ponape 10:32:52 - LMT 1901 # Kolonia
- 11:00 - PONT # Ponape Time
-Zone Pacific/Kosrae 10:51:56 - LMT 1901
- 11:00 - KOST 1969 Oct # Kosrae Time
- 12:00 - KOST 1999
- 11:00 - KOST
-
-# Nauru
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Nauru 11:07:40 - LMT 1921 Jan 15 # Uaobe
- 11:30 - NRT 1942 Mar 15 # Nauru Time
- 9:00 - JST 1944 Aug 15
- 11:30 - NRT 1979 May
- 12:00 - NRT
-
-# New Caledonia
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule NC 1977 1978 - Dec Sun>=1 0:00 1:00 S
-Rule NC 1978 1979 - Feb 27 0:00 0 -
-Rule NC 1996 only - Dec 1 2:00s 1:00 S
-# Shanks & Pottenger say the following was at 2:00; go with IATA.
-Rule NC 1997 only - Mar 2 2:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Noumea 11:05:48 - LMT 1912 Jan 13
- 11:00 NC NC%sT
-
-
-###############################################################################
-
-# New Zealand
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule NZ 1927 only - Nov 6 2:00 1:00 S
-Rule NZ 1928 only - Mar 4 2:00 0 M
-Rule NZ 1928 1933 - Oct Sun>=8 2:00 0:30 S
-Rule NZ 1929 1933 - Mar Sun>=15 2:00 0 M
-Rule NZ 1934 1940 - Apr lastSun 2:00 0 M
-Rule NZ 1934 1940 - Sep lastSun 2:00 0:30 S
-Rule NZ 1946 only - Jan 1 0:00 0 S
-# Since 1957 Chatham has been 45 minutes ahead of NZ, but there's no
-# convenient notation for this so we must duplicate the Rule lines.
-Rule NZ 1974 only - Nov Sun>=1 2:00s 1:00 D
-Rule Chatham 1974 only - Nov Sun>=1 2:45s 1:00 D
-Rule NZ 1975 only - Feb lastSun 2:00s 0 S
-Rule Chatham 1975 only - Feb lastSun 2:45s 0 S
-Rule NZ 1975 1988 - Oct lastSun 2:00s 1:00 D
-Rule Chatham 1975 1988 - Oct lastSun 2:45s 1:00 D
-Rule NZ 1976 1989 - Mar Sun>=1 2:00s 0 S
-Rule Chatham 1976 1989 - Mar Sun>=1 2:45s 0 S
-Rule NZ 1989 only - Oct Sun>=8 2:00s 1:00 D
-Rule Chatham 1989 only - Oct Sun>=8 2:45s 1:00 D
-Rule NZ 1990 2006 - Oct Sun>=1 2:00s 1:00 D
-Rule Chatham 1990 2006 - Oct Sun>=1 2:45s 1:00 D
-Rule NZ 1990 2007 - Mar Sun>=15 2:00s 0 S
-Rule Chatham 1990 2007 - Mar Sun>=15 2:45s 0 S
-Rule NZ 2007 max - Sep lastSun 2:00s 1:00 D
-Rule Chatham 2007 max - Sep lastSun 2:45s 1:00 D
-Rule NZ 2008 max - Apr Sun>=1 2:00s 0 S
-Rule Chatham 2008 max - Apr Sun>=1 2:45s 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Auckland 11:39:04 - LMT 1868 Nov 2
- 11:30 NZ NZ%sT 1946 Jan 1
- 12:00 NZ NZ%sT
-Zone Pacific/Chatham 12:13:48 - LMT 1957 Jan 1
- 12:45 Chatham CHA%sT
-
-
-# Auckland Is
-# uninhabited; Maori and Moriori, colonial settlers, pastoralists, sealers,
-# and scientific personnel have wintered
-
-# Campbell I
-# minor whaling stations operated 1909/1914
-# scientific station operated 1941/1995;
-# previously whalers, sealers, pastoralists, and scientific personnel wintered
-# was probably like Pacific/Auckland
-
-###############################################################################
-
-
-# Niue
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Niue -11:19:40 - LMT 1901 # Alofi
- -11:20 - NUT 1951 # Niue Time
- -11:30 - NUT 1978 Oct 1
- -11:00 - NUT
-
-# Norfolk
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston
- 11:12 - NMT 1951 # Norfolk Mean Time
- 11:30 - NFT # Norfolk Time
-
-# Palau (Belau)
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror
- 9:00 - PWT # Palau Time
-
-# Papua New Guinea
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Port_Moresby 9:48:40 - LMT 1880
- 9:48:32 - PMMT 1895 # Port Moresby Mean Time
- 10:00 - PGT # Papua New Guinea Time
-
-# Pitcairn
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown
- -8:30 - PNT 1998 Apr 27 00:00
- -8:00 - PST # Pitcairn Standard Time
-
-# American Samoa
-Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5
- -11:22:48 - LMT 1911
- -11:30 - SAMT 1950 # Samoa Time
- -11:00 - NST 1967 Apr # N=Nome
- -11:00 - BST 1983 Nov 30 # B=Bering
- -11:00 - SST # S=Samoa
-
-# Samoa
-Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5
- -11:26:56 - LMT 1911
- -11:30 - SAMT 1950 # Samoa Time
- -11:00 - WST # Samoa Time
-
-# Solomon Is
-# excludes Bougainville, for which see Papua New Guinea
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara
- 11:00 - SBT # Solomon Is Time
-
-# Tokelau Is
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Fakaofo -11:24:56 - LMT 1901
- -10:00 - TKT # Tokelau Time
-
-# Tonga
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Tonga 1999 only - Oct 7 2:00s 1:00 S
-Rule Tonga 2000 only - Mar 19 2:00s 0 -
-Rule Tonga 2000 2001 - Nov Sun>=1 2:00 1:00 S
-Rule Tonga 2001 2002 - Jan lastSun 2:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Tongatapu 12:19:20 - LMT 1901
- 12:20 - TOT 1941 # Tonga Time
- 13:00 - TOT 1999
- 13:00 Tonga TO%sT
-
-# Tuvalu
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Funafuti 11:56:52 - LMT 1901
- 12:00 - TVT # Tuvalu Time
-
-
-# US minor outlying islands
-
-# Howland, Baker
-# Howland was mined for guano by American companies 1857-1878 and British
-# 1886-1891; Baker was similar but exact dates are not known.
-# Inhabited by civilians 1935-1942; U.S. military bases 1943-1944;
-# uninhabited thereafter.
-# Howland observed Hawaii Standard Time (UTC-10:30) in 1937;
-# see page 206 of Elgen M. Long and Marie K. Long,
-# Amelia Earhart: the Mystery Solved, Simon & Schuster (2000).
-# So most likely Howland and Baker observed Hawaii Time from 1935
-# until they were abandoned after the war.
-
-# Jarvis
-# Mined for guano by American companies 1857-1879 and British 1883?-1891?.
-# Inhabited by civilians 1935-1942; IGY scientific base 1957-1958;
-# uninhabited thereafter.
-# no information; was probably like Pacific/Kiritimati
-
-# Johnston
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Johnston -10:00 - HST
-
-# Kingman
-# uninhabited
-
-# Midway
-#
-# From Mark Brader (2005-01-23):
-# [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies,
-# published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3]
-# reproduced a Pan American Airways timeables from 1936, for their weekly
-# "Orient Express" flights between San Francisco and Manila, and connecting
-# flights to Chicago and the US East Coast. As it uses some time zone
-# designations that I've never seen before:....
-# Fri. 6:30A Lv. HONOLOLU (Pearl Harbor), H.I. H.L.T. Ar. 5:30P Sun.
-# " 3:00P Ar. MIDWAY ISLAND . . . . . . . . . M.L.T. Lv. 6:00A "
-#
-Zone Pacific/Midway -11:49:28 - LMT 1901
- -11:00 - NST 1956 Jun 3
- -11:00 1:00 NDT 1956 Sep 2
- -11:00 - NST 1967 Apr # N=Nome
- -11:00 - BST 1983 Nov 30 # B=Bering
- -11:00 - SST # S=Samoa
-
-# Palmyra
-# uninhabited since World War II; was probably like Pacific/Kiritimati
-
-# Wake
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Wake 11:06:28 - LMT 1901
- 12:00 - WAKT # Wake Time
-
-
-# Vanuatu
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Vanuatu 1983 only - Sep 25 0:00 1:00 S
-Rule Vanuatu 1984 1991 - Mar Sun>=23 0:00 0 -
-Rule Vanuatu 1984 only - Oct 23 0:00 1:00 S
-Rule Vanuatu 1985 1991 - Sep Sun>=23 0:00 1:00 S
-Rule Vanuatu 1992 1993 - Jan Sun>=23 0:00 0 -
-Rule Vanuatu 1992 only - Oct Sun>=23 0:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila
- 11:00 Vanuatu VU%sT # Vanuatu Time
-
-# Wallis and Futuna
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Pacific/Wallis 12:15:20 - LMT 1901
- 12:00 - WFT # Wallis & Futuna Time
-
-###############################################################################
-
-# NOTES
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@elsie.nci.nih.gov for general use in the future).
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually. Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1990, and IATA SSIM is the source for entries afterwards.
-#
-# Another source occasionally used is Edward W. Whitman, World Time Differences,
-# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
-# I found in the UCLA library.
-#
-# A reliable and entertaining source about time zones is
-# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
-#
-# I invented the abbreviations marked `*' in the following table;
-# the rest are from earlier versions of this file, or from other sources.
-# Corrections are welcome!
-# std dst
-# LMT Local Mean Time
-# 8:00 WST WST Western Australia
-# 8:45 CWST CWST Central Western Australia*
-# 9:00 JST Japan
-# 9:30 CST CST Central Australia
-# 10:00 EST EST Eastern Australia
-# 10:00 ChST Chamorro
-# 10:30 LHST LHST Lord Howe*
-# 11:30 NZMT NZST New Zealand through 1945
-# 12:00 NZST NZDT New Zealand 1946-present
-# 12:45 CHAST CHADT Chatham*
-# -11:00 SST Samoa
-# -10:00 HST Hawaii
-# - 8:00 PST Pitcairn*
-#
-# See the `northamerica' file for Hawaii.
-# See the `southamerica' file for Easter I and the Galapagos Is.
-
-###############################################################################
-
-# Australia
-
-# From Paul Eggert (2005-12-08):
-# <a href="http://www.bom.gov.au/climate/averages/tables/dst_times.shtml">
-# Implementation Dates of Daylight Saving Time within Australia
-# </a> summarizes daylight saving issues in Australia.
-
-# From Arthur David Olson (2005-12-12):
-# <a href="http://www.lawlink.nsw.gov.au/lawlink/Corporate/ll_agdinfo.nsf/pages/community_relations_daylight_saving">
-# Lawlink NSW:Daylight Saving in New South Wales
-# </a> covers New South Wales in particular.
-
-# From John Mackin (1991-03-06):
-# We in Australia have _never_ referred to DST as `daylight' time.
-# It is called `summer' time. Now by a happy coincidence, `summer'
-# and `standard' happen to start with the same letter; hence, the
-# abbreviation does _not_ change...
-# The legislation does not actually define abbreviations, at least
-# in this State, but the abbreviation is just commonly taken to be the
-# initials of the phrase, and the legislation here uniformly uses
-# the phrase `summer time' and does not use the phrase `daylight
-# time'.
-# Announcers on the Commonwealth radio network, the ABC (for Australian
-# Broadcasting Commission), use the phrases `Eastern Standard Time'
-# or `Eastern Summer Time'. (Note, though, that as I say in the
-# current australasia file, there is really no such thing.) Announcers
-# on its overseas service, Radio Australia, use the same phrases
-# prefixed by the word `Australian' when referring to local times;
-# time announcements on that service, naturally enough, are made in UTC.
-
-# From Arthur David Olson (1992-03-08):
-# Given the above, what's chosen for year-round use is:
-# CST for any place operating at a GMTOFF of 9:30
-# WST for any place operating at a GMTOFF of 8:00
-# EST for any place operating at a GMTOFF of 10:00
-
-# From Chuck Soper (2006-06-01):
-# I recently found this Australian government web page on time zones:
-# <http://www.australia.gov.au/about-australia-13time>
-# And this government web page lists time zone names and abbreviations:
-# <http://www.bom.gov.au/climate/averages/tables/daysavtm.shtml>
-
-# From Paul Eggert (2001-04-05), summarizing a long discussion about "EST"
-# versus "AEST" etc.:
-#
-# I see the following points of dispute:
-#
-# * How important are unique time zone abbreviations?
-#
-# Here I tend to agree with the point (most recently made by Chris
-# Newman) that unique abbreviations should not be essential for proper
-# operation of software. We have other instances of ambiguity
-# (e.g. "IST" denoting both "Israel Standard Time" and "Indian
-# Standard Time"), and they are not likely to go away any time soon.
-# In the old days, some software mistakenly relied on unique
-# abbreviations, but this is becoming less true with time, and I don't
-# think it's that important to cater to such software these days.
-#
-# On the other hand, there is another motivation for unambiguous
-# abbreviations: it cuts down on human confusion. This is
-# particularly true for Australia, where "EST" can mean one thing for
-# time T and a different thing for time T plus 1 second.
-#
-# * Does the relevant legislation indicate which abbreviations should be used?
-#
-# Here I tend to think that things are a mess, just as they are in
-# many other countries. We Americans are currently disagreeing about
-# which abbreviation to use for the newly legislated Chamorro Standard
-# Time, for example.
-#
-# Personally, I would prefer to use common practice; I would like to
-# refer to legislation only for examples of common practice, or as a
-# tiebreaker.
-#
-# * Do Australians more often use "Eastern Daylight Time" or "Eastern
-# Summer Time"? Do they typically prefix the time zone names with
-# the word "Australian"?
-#
-# My own impression is that both "Daylight Time" and "Summer Time" are
-# common and are widely understood, but that "Summer Time" is more
-# popular; and that the leading "A" is also common but is omitted more
-# often than not. I just used AltaVista advanced search and got the
-# following count of page hits:
-#
-# 1,103 "Eastern Summer Time" AND domain:au
-# 971 "Australian Eastern Summer Time" AND domain:au
-# 613 "Eastern Daylight Time" AND domain:au
-# 127 "Australian Eastern Daylight Time" AND domain:au
-#
-# Here "Summer" seems quite a bit more popular than "Daylight",
-# particularly when we know the time zone is Australian and not US,
-# say. The "Australian" prefix seems to be popular for Eastern Summer
-# Time, but unpopular for Eastern Daylight Time.
-#
-# For abbreviations, tools like AltaVista are less useful because of
-# ambiguity. Many hits are not really time zones, unfortunately, and
-# many hits denote US time zones and not Australian ones. But here
-# are the hit counts anyway:
-#
-# 161,304 "EST" and domain:au
-# 25,156 "EDT" and domain:au
-# 18,263 "AEST" and domain:au
-# 10,416 "AEDT" and domain:au
-#
-# 14,538 "CST" and domain:au
-# 5,728 "CDT" and domain:au
-# 176 "ACST" and domain:au
-# 29 "ACDT" and domain:au
-#
-# 7,539 "WST" and domain:au
-# 68 "AWST" and domain:au
-#
-# This data suggest that Australians tend to omit the "A" prefix in
-# practice. The situation for "ST" versus "DT" is less clear, given
-# the ambiguities involved.
-#
-# * How do Australians feel about the abbreviations in the tz database?
-#
-# If you just count Australians on this list, I count 2 in favor and 3
-# against. One of the "against" votes (David Keegel) counseled delay,
-# saying that both AEST/AEDT and EST/EST are widely used and
-# understood in Australia.
-
-# From Paul Eggert (1995-12-19):
-# Shanks & Pottenger report 2:00 for all autumn changes in Australia and NZ.
-# Mark Prior writes that his newspaper
-# reports that NSW's fall 1995 change will occur at 2:00,
-# but Robert Elz says it's been 3:00 in Victoria since 1970
-# and perhaps the newspaper's `2:00' is referring to standard time.
-# For now we'll continue to assume 2:00s for changes since 1960.
-
-# From Eric Ulevik (1998-01-05):
-#
-# Here are some URLs to Australian time legislation. These URLs are stable,
-# and should probably be included in the data file. There are probably more
-# relevant entries in this database.
-#
-# NSW (including LHI and Broken Hill):
-# <a href="http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html">
-# Standard Time Act 1987 (updated 1995-04-04)
-# </a>
-# ACT
-# <a href="http://www.austlii.edu.au/au/legis/act/consol_act/stasta1972279/index.html">
-# Standard Time and Summer Time Act 1972
-# </a>
-# SA
-# <a href="http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html">
-# Standard Time Act, 1898
-# </a>
-
-# From David Grosz (2005-06-13):
-# It was announced last week that Daylight Saving would be extended by
-# one week next year to allow for the 2006 Commonwealth Games.
-# Daylight Saving is now to end for next year only on the first Sunday
-# in April instead of the last Sunday in March.
-#
-# From Gwillim Law (2005-06-14):
-# I did some Googling and found that all of those states (and territory) plan
-# to extend DST together in 2006.
-# ACT: http://www.cmd.act.gov.au/mediareleases/fileread.cfm?file=86.txt
-# New South Wales: http://www.thecouriermail.news.com.au/common/story_page/0,5936,15538869%255E1702,00.html
-# South Australia: http://www.news.com.au/story/0,10117,15555031-1246,00.html
-# Tasmania: http://www.media.tas.gov.au/release.php?id=14772
-# Victoria: I wasn't able to find anything separate, but the other articles
-# allude to it.
-# But not Queensland
-# http://www.news.com.au/story/0,10117,15564030-1248,00.html.
-
-# Northern Territory
-
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# # The NORTHERN TERRITORY.. [ Courtesy N.T. Dept of the Chief Minister ]
-# # [ Nov 1990 ]
-# # N.T. have never utilised any DST due to sub-tropical/tropical location.
-# ...
-# Zone Australia/North 9:30 - CST
-
-# From Bradley White (1991-03-04):
-# A recent excerpt from an Australian newspaper...
-# the Northern Territory do[es] not have daylight saving.
-
-# Western Australia
-
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# # The state of WESTERN AUSTRALIA.. [ Courtesy W.A. dept Premier+Cabinet ]
-# # [ Nov 1990 ]
-# # W.A. suffers from a great deal of public and political opposition to
-# # DST in principle. A bill is brought before parliament in most years, but
-# # usually defeated either in the upper house, or in party caucus
-# # before reaching parliament.
-# ...
-# Zone Australia/West 8:00 AW %sST
-# ...
-# Rule AW 1974 only - Oct lastSun 2:00 1:00 D
-# Rule AW 1975 only - Mar Sun>=1 3:00 0 W
-# Rule AW 1983 only - Oct lastSun 2:00 1:00 D
-# Rule AW 1984 only - Mar Sun>=1 3:00 0 W
-
-# From Bradley White (1991-03-04):
-# A recent excerpt from an Australian newspaper...
-# Western Australia...do[es] not have daylight saving.
-
-# From John D. Newman via Bradley White (1991-11-02):
-# Western Australia is still on "winter time". Some DH in Sydney
-# rang me at home a few days ago at 6.00am. (He had just arrived at
-# work at 9.00am.)
-# W.A. is switching to Summer Time on Nov 17th just to confuse
-# everybody again.
-
-# From Arthur David Olson (1992-03-08):
-# The 1992 ending date used in the rules is a best guess;
-# it matches what was used in the past.
-
-# <a href="http://www.bom.gov.au/faq/faqgen.htm">
-# The Australian Bureau of Meteorology FAQ
-# </a> (1999-09-27) writes that Giles Meteorological Station uses
-# South Australian time even though it's located in Western Australia.
-
-# Queensland
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# # The state of QUEENSLAND.. [ Courtesy Qld. Dept Premier Econ&Trade Devel ]
-# # [ Dec 1990 ]
-# ...
-# Zone Australia/Queensland 10:00 AQ %sST
-# ...
-# Rule AQ 1971 only - Oct lastSun 2:00 1:00 D
-# Rule AQ 1972 only - Feb lastSun 3:00 0 E
-# Rule AQ 1989 max - Oct lastSun 2:00 1:00 D
-# Rule AQ 1990 max - Mar Sun>=1 3:00 0 E
-
-# From Bradley White (1989-12-24):
-# "Australia/Queensland" now observes daylight time (i.e. from
-# October 1989).
-
-# From Bradley White (1991-03-04):
-# A recent excerpt from an Australian newspaper...
-# ...Queensland...[has] agreed to end daylight saving
-# at 3am tomorrow (March 3)...
-
-# From John Mackin (1991-03-06):
-# I can certainly confirm for my part that Daylight Saving in NSW did in fact
-# end on Sunday, 3 March. I don't know at what hour, though. (It surprised
-# me.)
-
-# From Bradley White (1992-03-08):
-# ...there was recently a referendum in Queensland which resulted
-# in the experimental daylight saving system being abandoned. So, ...
-# ...
-# Rule QLD 1989 1991 - Oct lastSun 2:00 1:00 D
-# Rule QLD 1990 1992 - Mar Sun>=1 3:00 0 S
-# ...
-
-# From Arthur David Olson (1992-03-08):
-# The chosen rules the union of the 1971/1972 change and the 1989-1992 changes.
-
-# From Christopher Hunt (2006-11-21), after an advance warning
-# from Jesper Norgaard Welen (2006-11-01):
-# WA are trialing DST for three years.
-# <http://www.parliament.wa.gov.au/parliament/bills.nsf/9A1B183144403DA54825721200088DF1/$File/Bill175-1B.pdf>
-
-# From Rives McDow (2002-04-09):
-# The most interesting region I have found consists of three towns on the
-# southern coast.... South Australia observes daylight saving time; Western
-# Australia does not. The two states are one and a half hours apart. The
-# residents decided to forget about this nonsense of changing the clock so
-# much and set the local time 20 hours and 45 minutes from the
-# international date line, or right in the middle of the time of South
-# Australia and Western Australia....
-#
-# From Paul Eggert (2002-04-09):
-# This is confirmed by the section entitled
-# "What's the deal with time zones???" in
-# <http://www.earthsci.unimelb.edu.au/~awatkins/null.html>.
-#
-# From Alex Livingston (2006-12-07):
-# ... it was just on four years ago that I drove along the Eyre Highway,
-# which passes through eastern Western Australia close to the southern
-# coast of the continent.
-#
-# I paid particular attention to the time kept there. There can be no
-# dispute that UTC+08:45 was considered "the time" from the border
-# village just inside the border with South Australia to as far west
-# as just east of Caiguna. There can also be no dispute that Eucla is
-# the largest population centre in this zone....
-#
-# Now that Western Australia is observing daylight saving, the
-# question arose whether this part of the state would follow suit. I
-# just called the border village and confirmed that indeed they have,
-# meaning that they are now observing UTC+09:45.
-#
-# (2006-12-09):
-# I personally doubt that either experimentation with daylight saving
-# in WA or its introduction in SA had anything to do with the genesis
-# of this time zone. My hunch is that it's been around since well
-# before 1975. I remember seeing it noted on road maps decades ago.
-
-# From Paul Eggert (2006-12-15):
-# For lack of better info, assume the tradition dates back to the
-# introduction of standard time in 1895.
-
-
-# southeast Australia
-#
-# From Paul Eggert (2007-07-23):
-# Starting autumn 2008 Victoria, NSW, South Australia, Tasmania and the ACT
-# end DST the first Sunday in April and start DST the first Sunday in October.
-# http://www.theage.com.au/news/national/daylight-savings-to-span-six-months/2007/06/27/1182623966703.html
-
-
-# South Australia
-
-# From Bradley White (1991-03-04):
-# A recent excerpt from an Australian newspaper...
-# ...South Australia...[has] agreed to end daylight saving
-# at 3am tomorrow (March 3)...
-
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# # The state of SOUTH AUSTRALIA....[ Courtesy of S.A. Dept of Labour ]
-# # [ Nov 1990 ]
-# ...
-# Zone Australia/South 9:30 AS %sST
-# ...
-# Rule AS 1971 max - Oct lastSun 2:00 1:00 D
-# Rule AS 1972 1985 - Mar Sun>=1 3:00 0 C
-# Rule AS 1986 1990 - Mar Sun>=15 3:00 0 C
-# Rule AS 1991 max - Mar Sun>=1 3:00 0 C
-
-# From Bradley White (1992-03-11):
-# Recent correspondence with a friend in Adelaide
-# contained the following exchange: "Due to the Adelaide Festival,
-# South Australia delays setting back our clocks for a few weeks."
-
-# From Robert Elz (1992-03-13):
-# I heard that apparently (or at least, it appears that)
-# South Aus will have an extra 3 weeks daylight saving every even
-# numbered year (from 1990). That's when the Adelaide Festival
-# is on...
-
-# From Robert Elz (1992-03-16, 00:57:07 +1000):
-# DST didn't end in Adelaide today (yesterday)....
-# But whether it's "4th Sunday" or "2nd last Sunday" I have no idea whatever...
-# (it's just as likely to be "the Sunday we pick for this year"...).
-
-# From Bradley White (1994-04-11):
-# If Sun, 15 March, 1992 was at +1030 as kre asserts, but yet Sun, 20 March,
-# 1994 was at +0930 as John Connolly's customer seems to assert, then I can
-# only conclude that the actual rule is more complicated....
-
-# From John Warburton (1994-10-07):
-# The new Daylight Savings dates for South Australia ...
-# was gazetted in the Government Hansard on Sep 26 1994....
-# start on last Sunday in October and end in last sunday in March.
-
-# From Paul Eggert (2007-07-23):
-# See "southeast Australia" above for 2008 and later.
-
-# Tasmania
-
-# The rules for 1967 through 1991 were reported by George Shepherd
-# via Simon Woodhead via Robert Elz (1991-03-06):
-# # The state of TASMANIA.. [Courtesy Tasmanian Dept of Premier + Cabinet ]
-# # [ Nov 1990 ]
-
-# From Bill Hart via Guy Harris (1991-10-10):
-# Oh yes, the new daylight savings rules are uniquely tasmanian, we have
-# 6 weeks a year now when we are out of sync with the rest of Australia
-# (but nothing new about that).
-
-# From Alex Livingston (1999-10-04):
-# I heard on the ABC (Australian Broadcasting Corporation) radio news on the
-# (long) weekend that Tasmania, which usually goes its own way in this regard,
-# has decided to join with most of NSW, the ACT, and most of Victoria
-# (Australia) and start daylight saving on the last Sunday in August in 2000
-# instead of the first Sunday in October.
-
-# Sim Alam (2000-07-03) reported a legal citation for the 2000/2001 rules:
-# http://www.thelaw.tas.gov.au/fragview/42++1968+GS3A@EN+2000070300
-
-# From Paul Eggert (2007-07-23):
-# See "southeast Australia" above for 2008 and later.
-
-# Victoria
-
-# The rules for 1971 through 1991 were reported by George Shepherd
-# via Simon Woodhead via Robert Elz (1991-03-06):
-# # The state of VICTORIA.. [ Courtesy of Vic. Dept of Premier + Cabinet ]
-# # [ Nov 1990 ]
-
-# From Scott Harrington (2001-08-29):
-# On KQED's "City Arts and Lectures" program last night I heard an
-# interesting story about daylight savings time. Dr. John Heilbron was
-# discussing his book "The Sun in the Church: Cathedrals as Solar
-# Observatories"[1], and in particular the Shrine of Remembrance[2] located
-# in Melbourne, Australia.
-#
-# Apparently the shrine's main purpose is a beam of sunlight which
-# illuminates a special spot on the floor at the 11th hour of the 11th day
-# of the 11th month (Remembrance Day) every year in memory of Australia's
-# fallen WWI soldiers. And if you go there on Nov. 11, at 11am local time,
-# you will indeed see the sunbeam illuminate the special spot at the
-# expected time.
-#
-# However, that is only because of some special mirror contraption that had
-# to be employed, since due to daylight savings time, the true solar time of
-# the remembrance moment occurs one hour later (or earlier?). Perhaps
-# someone with more information on this jury-rig can tell us more.
-#
-# [1] http://www.hup.harvard.edu/catalog/HEISUN.html
-# [2] http://www.shrine.org.au
-
-# From Paul Eggert (2007-07-23):
-# See "southeast Australia" above for 2008 and later.
-
-# New South Wales
-
-# From Arthur David Olson:
-# New South Wales and subjurisdictions have their own ideas of a fun time.
-# Based on law library research by John Mackin,
-# who notes:
-# In Australia, time is not legislated federally, but rather by the
-# individual states. Thus, while such terms as ``Eastern Standard Time''
-# [I mean, of course, Australian EST, not any other kind] are in common
-# use, _they have NO REAL MEANING_, as they are not defined in the
-# legislation. This is very important to understand.
-# I have researched New South Wales time only...
-
-# From Eric Ulevik (1999-05-26):
-# DST will start in NSW on the last Sunday of August, rather than the usual
-# October in 2000. [See: Matthew Moore,
-# <a href="http://www.smh.com.au/news/9905/26/pageone/pageone4.html">
-# Two months more daylight saving
-# </a>
-# Sydney Morning Herald (1999-05-26).]
-
-# From Paul Eggert (1999-09-27):
-# See the following official NSW source:
-# <a href="http://dir.gis.nsw.gov.au/cgi-bin/genobject/document/other/daylightsaving/tigGmZ">
-# Daylight Saving in New South Wales.
-# </a>
-#
-# Narrabri Shire (NSW) council has announced it will ignore the extension of
-# daylight saving next year. See:
-# <a href="http://abc.net.au/news/regionals/neweng/monthly/regeng-22jul1999-1.htm">
-# Narrabri Council to ignore daylight saving
-# </a> (1999-07-22). For now, we'll wait to see if this really happens.
-#
-# Victoria will following NSW. See:
-# <a href="http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm">
-# Vic to extend daylight saving
-# </a> (1999-07-28).
-#
-# However, South Australia rejected the DST request. See:
-# <a href="http://abc.net.au/news/olympics/1999/07/item19990719151754_1.htm">
-# South Australia rejects Olympics daylight savings request
-# </a> (1999-07-19).
-#
-# Queensland also will not observe DST for the Olympics. See:
-# <a href="http://abc.net.au/news/olympics/1999/06/item19990601114608_1.htm">
-# Qld says no to daylight savings for Olympics
-# </a> (1999-06-01), which quotes Queensland Premier Peter Beattie as saying
-# ``Look you've got to remember in my family when this came up last time
-# I voted for it, my wife voted against it and she said to me it's all very
-# well for you, you don't have to worry about getting the children out of
-# bed, getting them to school, getting them to sleep at night.
-# I've been through all this argument domestically...my wife rules.''
-#
-# Broken Hill will stick with South Australian time in 2000. See:
-# <a href="http://abc.net.au/news/regionals/brokenh/monthly/regbrok-21jul1999-6.htm">
-# Broken Hill to be behind the times
-# </a> (1999-07-21).
-
-# IATA SSIM (1998-09) says that the spring 2000 change for Australian
-# Capital Territory, New South Wales except Lord Howe Island and Broken
-# Hill, and Victoria will be August 27, presumably due to the Sydney Olympics.
-
-# From Eric Ulevik, referring to Sydney's Sun Herald (2000-08-13), page 29:
-# The Queensland Premier Peter Beattie is encouraging northern NSW
-# towns to use Queensland time.
-
-# From Paul Eggert (2007-07-23):
-# See "southeast Australia" above for 2008 and later.
-
-# Yancowinna
-
-# From John Mackin (1989-01-04):
-# `Broken Hill' means the County of Yancowinna.
-
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# # YANCOWINNA.. [ Confirmation courtesy of Broken Hill Postmaster ]
-# # [ Dec 1990 ]
-# ...
-# # Yancowinna uses Central Standard Time, despite [its] location on the
-# # New South Wales side of the S.A. border. Most business and social dealings
-# # are with CST zones, therefore CST is legislated by local government
-# # although the switch to Summer Time occurs in line with N.S.W. There have
-# # been years when this did not apply, but the historical data is not
-# # presently available.
-# Zone Australia/Yancowinna 9:30 AY %sST
-# ...
-# Rule AY 1971 1985 - Oct lastSun 2:00 1:00 D
-# Rule AY 1972 only - Feb lastSun 3:00 0 C
-# [followed by other Rules]
-
-# Lord Howe Island
-
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# LHI... [ Courtesy of Pauline Van Winsen ]
-# [ Dec 1990 ]
-# Lord Howe Island is located off the New South Wales coast, and is half an
-# hour ahead of NSW time.
-
-# From James Lonergan, Secretary, Lord Howe Island Board (2000-01-27):
-# Lord Howe Island summer time in 2000/2001 will commence on the same
-# date as the rest of NSW (i.e. 2000-08-27). For your information the
-# Lord Howe Island Board (controlling authority for the Island) is
-# seeking the community's views on various options for summer time
-# arrangements on the Island, e.g. advance clocks by 1 full hour
-# instead of only 30 minutes. Dependant on the wishes of residents
-# the Board may approach the NSW government to change the existing
-# arrangements. The starting date for summer time on the Island will
-# however always coincide with the rest of NSW.
-
-# From James Lonergan, Secretary, Lord Howe Island Board (2000-10-25):
-# Lord Howe Island advances clocks by 30 minutes during DST in NSW and retards
-# clocks by 30 minutes when DST finishes. Since DST was most recently
-# introduced in NSW, the "changeover" time on the Island has been 02:00 as
-# shown on clocks on LHI. I guess this means that for 30 minutes at the start
-# of DST, LHI is actually 1 hour ahead of the rest of NSW.
-
-# From Paul Eggert (2006-03-22):
-# For Lord Howe dates we use Shanks & Pottenger through 1989, and
-# Lonergan thereafter. For times we use Lonergan.
-
-# From Paul Eggert (2007-07-23):
-# See "southeast Australia" above for 2008 and later.
-
-###############################################################################
-
-# New Zealand
-
-# From Mark Davies (1990-10-03):
-# the 1989/90 year was a trial of an extended "daylight saving" period.
-# This trial was deemed successful and the extended period adopted for
-# subsequent years (with the addition of a further week at the start).
-# source -- phone call to Ministry of Internal Affairs Head Office.
-
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# # The Country of New Zealand (Australia's east island -) Gee they hate that!
-# # or is Australia the west island of N.Z.
-# # [ courtesy of Geoff Tribble.. Auckland N.Z. ]
-# # [ Nov 1990 ]
-# ...
-# Rule NZ 1974 1988 - Oct lastSun 2:00 1:00 D
-# Rule NZ 1989 max - Oct Sun>=1 2:00 1:00 D
-# Rule NZ 1975 1989 - Mar Sun>=1 3:00 0 S
-# Rule NZ 1990 max - Mar lastSun 3:00 0 S
-# ...
-# Zone NZ 12:00 NZ NZ%sT # New Zealand
-# Zone NZ-CHAT 12:45 - NZ-CHAT # Chatham Island
-
-# From Arthur David Olson (1992-03-08):
-# The chosen rules use the Davies October 8 values for the start of DST in 1989
-# rather than the October 1 value.
-
-# From Paul Eggert (1995-12-19);
-# Shank & Pottenger report 2:00 for all autumn changes in Australia and NZ.
-# Robert Uzgalis writes that the New Zealand Daylight
-# Savings Time Order in Council dated 1990-06-18 specifies 2:00 standard
-# time on both the first Sunday in October and the third Sunday in March.
-# As with Australia, we'll assume the tradition is 2:00s, not 2:00.
-#
-# From Paul Eggert (2006-03-22):
-# The Department of Internal Affairs (DIA) maintains a brief history,
-# as does Carol Squires; see tz-link.htm for the full references.
-# Use these sources in preference to Shanks & Pottenger.
-#
-# For Chatham, IATA SSIM (1991/1999) gives the NZ rules but with
-# transitions at 2:45 local standard time; this confirms that Chatham
-# is always exactly 45 minutes ahead of Auckland.
-
-# From Colin Sharples (2007-04-30):
-# DST will now start on the last Sunday in September, and end on the
-# first Sunday in April. The changes take effect this year, meaning
-# that DST will begin on 2007-09-30 2008-04-06.
-# http://www.dia.govt.nz/diawebsite.nsf/wpg_URL/Services-Daylight-Saving-Daylight-saving-to-be-extended
-
-###############################################################################
-
-
-# Fiji
-
-# Howse writes (p 153) that in 1879 the British governor of Fiji
-# enacted an ordinance standardizing the islands on Antipodean Time
-# instead of the American system (which was one day behind).
-
-# From Rives McDow (1998-10-08):
-# Fiji will introduce DST effective 0200 local time, 1998-11-01
-# until 0300 local time 1999-02-28. Each year the DST period will
-# be from the first Sunday in November until the last Sunday in February.
-
-# From Paul Eggert (2000-01-08):
-# IATA SSIM (1999-09) says DST ends 0100 local time. Go with McDow.
-
-# From the BBC World Service (1998-10-31 11:32 UTC):
-# The Fijiian government says the main reasons for the time change is to
-# improve productivity and reduce road accidents. But correspondents say it
-# also hopes the move will boost Fiji's ability to compete with other pacific
-# islands in the effort to attract tourists to witness the dawning of the new
-# millenium.
-
-# http://www.fiji.gov.fj/press/2000_09/2000_09_13-05.shtml (2000-09-13)
-# reports that Fiji has discontinued DST.
-
-# Johnston
-
-# Johnston data is from usno1995.
-
-
-# Kiribati
-
-# From Paul Eggert (1996-01-22):
-# Today's _Wall Street Journal_ (page 1) reports that Kiribati
-# ``declared it the same day throught the country as of Jan. 1, 1995''
-# as part of the competition to be first into the 21st century.
-
-
-# Kwajalein
-
-# In comp.risks 14.87 (26 August 1993), Peter Neumann writes:
-# I wonder what happened in Kwajalein, where there was NO Friday,
-# 1993-08-20. Thursday night at midnight Kwajalein switched sides with
-# respect to the International Date Line, to rejoin its fellow islands,
-# going from 11:59 p.m. Thursday to 12:00 m. Saturday in a blink.
-
-
-# N Mariana Is, Guam
-
-# Howse writes (p 153) ``The Spaniards, on the other hand, reached the
-# Philippines and the Ladrones from America,'' and implies that the Ladrones
-# (now called the Marianas) kept American date for quite some time.
-# For now, we assume the Ladrones switched at the same time as the Philippines;
-# see Asia/Manila.
-
-# US Public Law 106-564 (2000-12-23) made UTC+10 the official standard time,
-# under the name "Chamorro Standard Time". There is no official abbreviation,
-# but Congressman Robert A. Underwood, author of the bill that became law,
-# wrote in a press release (2000-12-27) that he will seek the use of "ChST".
-
-
-# Micronesia
-
-# Alan Eugene Davis writes (1996-03-16),
-# ``I am certain, having lived there for the past decade, that "Truk"
-# (now properly known as Chuuk) ... is in the time zone GMT+10.''
-#
-# Shanks & Pottenger write that Truk switched from UTC+10 to UTC+11
-# on 1978-10-01; ignore this for now.
-
-# From Paul Eggert (1999-10-29):
-# The Federated States of Micronesia Visitors Board writes in
-# <a href="http://www.fsmgov.org/info/clocks.html">
-# The Federated States of Micronesia - Visitor Information
-# </a> (1999-01-26)
-# that Truk and Yap are UTC+10, and Ponape and Kosrae are UTC+11.
-# We don't know when Kosrae switched from UTC+12; assume January 1 for now.
-
-
-# Midway
-
-# From Charles T O'Connor, KMTH DJ (1956),
-# quoted in the KTMH section of the Radio Heritage Collection
-# <http://radiodx.com/spdxr/KMTH.htm> (2002-12-31):
-# For the past two months we've been on what is known as Daylight
-# Saving Time. This time has put us on air at 5am in the morning,
-# your time down there in New Zealand. Starting September 2, 1956
-# we'll again go back to Standard Time. This'll mean that we'll go to
-# air at 6am your time.
-#
-# From Paul Eggert (2003-03-23):
-# We don't know the date of that quote, but we'll guess they
-# started DST on June 3. Possibly DST was observed other years
-# in Midway, but we have no record of it.
-
-
-# Pitcairn
-
-# From Rives McDow (1999-11-08):
-# A Proclamation was signed by the Governor of Pitcairn on the 27th March 1998
-# with regard to Pitcairn Standard Time. The Proclamation is as follows.
-#
-# The local time for general purposes in the Islands shall be
-# Co-ordinated Universal time minus 8 hours and shall be known
-# as Pitcairn Standard Time.
-#
-# ... I have also seen Pitcairn listed as UTC minus 9 hours in several
-# references, and can only assume that this was an error in interpretation
-# somehow in light of this proclamation.
-
-# From Rives McDow (1999-11-09):
-# The Proclamation regarding Pitcairn time came into effect on 27 April 1998
-# ... at midnight.
-
-# From Howie Phelps (1999-11-10), who talked to a Pitcairner via shortwave:
-# Betty Christian told me yesterday that their local time is the same as
-# Pacific Standard Time. They used to be 1/2 hour different from us here in
-# Sacramento but it was changed a couple of years ago.
-
-
-# Samoa
-
-# Howse writes (p 153, citing p 10 of the 1883-11-18 New York Herald)
-# that in 1879 the King of Samoa decided to change
-# ``the date in his kingdom from the Antipodean to the American system,
-# ordaining -- by a masterpiece of diplomatic flattery -- that
-# the Fourth of July should be celebrated twice in that year.''
-
-
-# Tonga
-
-# From Paul Eggert (1996-01-22):
-# Today's _Wall Street Journal_ (p 1) reports that ``Tonga has been plotting
-# to sneak ahead of [New Zealanders] by introducing daylight-saving time.''
-# Since Kiribati has moved the Date Line it's not clear what Tonga will do.
-
-# Don Mundell writes in the 1997-02-20 Tonga Chronicle
-# <a href="http://www.tongatapu.net.to/tonga/homeland/timebegins.htm">
-# How Tonga became `The Land where Time Begins'
-# </a>:
-
-# Until 1941 Tonga maintained a standard time 50 minutes ahead of NZST
-# 12 hours and 20 minutes ahead of GMT. When New Zealand adjusted its
-# standard time in 1940s, Tonga had the choice of subtracting from its
-# local time to come on the same standard time as New Zealand or of
-# advancing its time to maintain the differential of 13 degrees
-# (approximately 50 minutes ahead of New Zealand time).
-#
-# Because His Majesty King Taufa'ahau Tupou IV, then Crown Prince
-# Tungi, preferred to ensure Tonga's title as the land where time
-# begins, the Legislative Assembly approved the latter change.
-#
-# But some of the older, more conservative members from the outer
-# islands objected. "If at midnight on Dec. 31, we move ahead 40
-# minutes, as your Royal Highness wishes, what becomes of the 40
-# minutes we have lost?"
-#
-# The Crown Prince, presented an unanswerable argument: "Remember that
-# on the World Day of Prayer, you would be the first people on Earth
-# to say your prayers in the morning."
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say the transition was on 1968-10-01; go with Mundell.
-
-# From Eric Ulevik (1999-05-03):
-# Tonga's director of tourism, who is also secretary of the National Millenium
-# Committee, has a plan to get Tonga back in front.
-# He has proposed a one-off move to tropical daylight saving for Tonga from
-# October to March, which has won approval in principle from the Tongan
-# Government.
-
-# From Steffen Thorsen (1999-09-09):
-# * Tonga will introduce DST in November
-#
-# I was given this link by John Letts:
-# <a href="http://news.bbc.co.uk/hi/english/world/asia-pacific/newsid_424000/424764.stm">
-# http://news.bbc.co.uk/hi/english/world/asia-pacific/newsid_424000/424764.stm
-# </a>
-#
-# I have not been able to find exact dates for the transition in November
-# yet. By reading this article it seems like Fiji will be 14 hours ahead
-# of UTC as well, but as far as I know Fiji will only be 13 hours ahead
-# (12 + 1 hour DST).
-
-# From Arthur David Olson (1999-09-20):
-# According to <a href="http://www.tongaonline.com/news/sept1799.html">
-# http://www.tongaonline.com/news/sept1799.html
-# </a>:
-# "Daylight Savings Time will take effect on Oct. 2 through April 15, 2000
-# and annually thereafter from the first Saturday in October through the
-# third Saturday of April. Under the system approved by Privy Council on
-# Sept. 10, clocks must be turned ahead one hour on the opening day and
-# set back an hour on the closing date."
-# Alas, no indication of the time of day.
-
-# From Rives McDow (1999-10-06):
-# Tonga started its Daylight Saving on Saturday morning October 2nd at 0200am.
-# Daylight Saving ends on April 16 at 0300am which is Sunday morning.
-
-# From Steffen Thorsen (2000-10-31):
-# Back in March I found a notice on the website http://www.tongaonline.com
-# that Tonga changed back to standard time one month early, on March 19
-# instead of the original reported date April 16. Unfortunately, the article
-# is no longer available on the site, and I did not make a copy of the
-# text, and I have forgotten to report it here.
-# (Original URL was: http://www.tongaonline.com/news/march162000.htm )
-
-# From Rives McDow (2000-12-01):
-# Tonga is observing DST as of 2000-11-04 and will stop on 2001-01-27.
-
-# From Sione Moala-Mafi (2001-09-20) via Rives McDow:
-# At 2:00am on the first Sunday of November, the standard time in the Kingdom
-# shall be moved forward by one hour to 3:00am. At 2:00am on the last Sunday
-# of January the standard time in the Kingdom shall be moved backward by one
-# hour to 1:00am.
-
-# From Pulu 'Anau (2002-11-05):
-# The law was for 3 years, supposedly to get renewed. It wasn't.
-
-
-# Wake
-
-# From Vernice Anderson, Personal Secretary to Philip Jessup,
-# US Ambassador At Large (oral history interview, 1971-02-02):
-#
-# Saturday, the 14th [of October, 1950] -- ... The time was all the
-# more confusing at that point, because we had crossed the
-# International Date Line, thus getting two Sundays. Furthermore, we
-# discovered that Wake Island had two hours of daylight saving time
-# making calculation of time in Washington difficult if not almost
-# impossible.
-#
-# http://www.trumanlibrary.org/wake/meeting.htm
-
-# From Paul Eggert (2003-03-23):
-# We have no other report of DST in Wake Island, so omit this info for now.
-
-###############################################################################
-
-# The International Date Line
-
-# From Gwillim Law (2000-01-03):
-#
-# The International Date Line is not defined by any international standard,
-# convention, or treaty. Mapmakers are free to draw it as they please.
-# Reputable mapmakers will simply ensure that every point of land appears on
-# the correct side of the IDL, according to the date legally observed there.
-#
-# When Kiribati adopted a uniform date in 1995, thereby moving the Phoenix and
-# Line Islands to the west side of the IDL (or, if you prefer, moving the IDL
-# to the east side of the Phoenix and Line Islands), I suppose that most
-# mapmakers redrew the IDL following the boundary of Kiribati. Even that line
-# has a rather arbitrary nature. The straight-line boundaries between Pacific
-# island nations that are shown on many maps are based on an international
-# convention, but are not legally binding national borders.... The date is
-# governed by the IDL; therefore, even on the high seas, there may be some
-# places as late as fourteen hours later than UTC. And, since the IDL is not
-# an international standard, there are some places on the high seas where the
-# correct date is ambiguous.
-
-# From Wikipedia <http://en.wikipedia.org/wiki/Time_zone> (2005-08-31):
-# Before 1920, all ships kept local apparent time on the high seas by setting
-# their clocks at night or at the morning sight so that, given the ship's
-# speed and direction, it would be 12 o'clock when the Sun crossed the ship's
-# meridian (12 o'clock = local apparent noon). During 1917, at the
-# Anglo-French Conference on Time-keeping at Sea, it was recommended that all
-# ships, both military and civilian, should adopt hourly standard time zones
-# on the high seas. Whenever a ship was within the territorial waters of any
-# nation it would use that nation's standard time. The captain was permitted
-# to change his ship's clocks at a time of his choice following his ship's
-# entry into another zone time--he often chose midnight. These zones were
-# adopted by all major fleets between 1920 and 1925 but not by many
-# independent merchant ships until World War II.
-
-# From Paul Eggert, using references suggested by Oscar van Vlijmen
-# (2005-03-20):
-#
-# The American Practical Navigator (2002)
-# <http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187>
-# talks only about the 180-degree meridian with respect to ships in
-# international waters; it ignores the international date line.
diff --git a/tools/zoneinfo/tzdata2008h/backward b/tools/zoneinfo/tzdata2008h/backward
deleted file mode 100644
index a65991c..0000000
--- a/tools/zoneinfo/tzdata2008h/backward
+++ /dev/null
@@ -1,112 +0,0 @@
-# @(#)backward 8.6
-
-# This file provides links between current names for time zones
-# and their old names. Many names changed in late 1993.
-
-Link Africa/Asmara Africa/Asmera
-Link Africa/Bamako Africa/Timbuktu
-Link America/Argentina/Catamarca America/Argentina/ComodRivadavia
-Link America/Adak America/Atka
-Link America/Argentina/Buenos_Aires America/Buenos_Aires
-Link America/Argentina/Catamarca America/Catamarca
-Link America/Atikokan America/Coral_Harbour
-Link America/Argentina/Cordoba America/Cordoba
-Link America/Tijuana America/Ensenada
-Link America/Indiana/Indianapolis America/Fort_Wayne
-Link America/Indiana/Indianapolis America/Indianapolis
-Link America/Argentina/Jujuy America/Jujuy
-Link America/Indiana/Knox America/Knox_IN
-Link America/Kentucky/Louisville America/Louisville
-Link America/Argentina/Mendoza America/Mendoza
-Link America/Rio_Branco America/Porto_Acre
-Link America/Argentina/Cordoba America/Rosario
-Link America/St_Thomas America/Virgin
-Link Asia/Ashgabat Asia/Ashkhabad
-Link Asia/Chongqing Asia/Chungking
-Link Asia/Dhaka Asia/Dacca
-Link Asia/Kolkata Asia/Calcutta
-Link Asia/Macau Asia/Macao
-Link Asia/Jerusalem Asia/Tel_Aviv
-Link Asia/Ho_Chi_Minh Asia/Saigon
-Link Asia/Thimphu Asia/Thimbu
-Link Asia/Makassar Asia/Ujung_Pandang
-Link Asia/Ulaanbaatar Asia/Ulan_Bator
-Link Atlantic/Faroe Atlantic/Faeroe
-Link Europe/Oslo Atlantic/Jan_Mayen
-Link Australia/Sydney Australia/ACT
-Link Australia/Sydney Australia/Canberra
-Link Australia/Lord_Howe Australia/LHI
-Link Australia/Sydney Australia/NSW
-Link Australia/Darwin Australia/North
-Link Australia/Brisbane Australia/Queensland
-Link Australia/Adelaide Australia/South
-Link Australia/Hobart Australia/Tasmania
-Link Australia/Melbourne Australia/Victoria
-Link Australia/Perth Australia/West
-Link Australia/Broken_Hill Australia/Yancowinna
-Link America/Rio_Branco Brazil/Acre
-Link America/Noronha Brazil/DeNoronha
-Link America/Sao_Paulo Brazil/East
-Link America/Manaus Brazil/West
-Link America/Halifax Canada/Atlantic
-Link America/Winnipeg Canada/Central
-Link America/Regina Canada/East-Saskatchewan
-Link America/Toronto Canada/Eastern
-Link America/Edmonton Canada/Mountain
-Link America/St_Johns Canada/Newfoundland
-Link America/Vancouver Canada/Pacific
-Link America/Regina Canada/Saskatchewan
-Link America/Whitehorse Canada/Yukon
-Link America/Santiago Chile/Continental
-Link Pacific/Easter Chile/EasterIsland
-Link America/Havana Cuba
-Link Africa/Cairo Egypt
-Link Europe/Dublin Eire
-Link Europe/London Europe/Belfast
-Link Europe/Chisinau Europe/Tiraspol
-Link Europe/London GB
-Link Europe/London GB-Eire
-Link Etc/GMT GMT+0
-Link Etc/GMT GMT-0
-Link Etc/GMT GMT0
-Link Etc/GMT Greenwich
-Link Asia/Hong_Kong Hongkong
-Link Atlantic/Reykjavik Iceland
-Link Asia/Tehran Iran
-Link Asia/Jerusalem Israel
-Link America/Jamaica Jamaica
-Link Asia/Tokyo Japan
-Link Pacific/Kwajalein Kwajalein
-Link Africa/Tripoli Libya
-Link America/Tijuana Mexico/BajaNorte
-Link America/Mazatlan Mexico/BajaSur
-Link America/Mexico_City Mexico/General
-Link Pacific/Auckland NZ
-Link Pacific/Chatham NZ-CHAT
-Link America/Denver Navajo
-Link Asia/Shanghai PRC
-Link Pacific/Pago_Pago Pacific/Samoa
-Link Pacific/Truk Pacific/Yap
-Link Europe/Warsaw Poland
-Link Europe/Lisbon Portugal
-Link Asia/Taipei ROC
-Link Asia/Seoul ROK
-Link Asia/Singapore Singapore
-Link Europe/Istanbul Turkey
-Link Etc/UCT UCT
-Link America/Anchorage US/Alaska
-Link America/Adak US/Aleutian
-Link America/Phoenix US/Arizona
-Link America/Chicago US/Central
-Link America/Indiana/Indianapolis US/East-Indiana
-Link America/New_York US/Eastern
-Link Pacific/Honolulu US/Hawaii
-Link America/Indiana/Knox US/Indiana-Starke
-Link America/Detroit US/Michigan
-Link America/Denver US/Mountain
-Link America/Los_Angeles US/Pacific
-Link Pacific/Pago_Pago US/Samoa
-Link Etc/UTC UTC
-Link Etc/UTC Universal
-Link Europe/Moscow W-SU
-Link Etc/UTC Zulu
diff --git a/tools/zoneinfo/tzdata2008h/etcetera b/tools/zoneinfo/tzdata2008h/etcetera
deleted file mode 100644
index cddbe8a..0000000
--- a/tools/zoneinfo/tzdata2008h/etcetera
+++ /dev/null
@@ -1,80 +0,0 @@
-# @(#)etcetera 8.1
-
-# These entries are mostly present for historical reasons, so that
-# people in areas not otherwise covered by the tz files could "zic -l"
-# to a time zone that was right for their area. These days, the
-# tz files cover almost all the inhabited world, and the only practical
-# need now for the entries that are not on UTC are for ships at sea
-# that cannot use POSIX TZ settings.
-
-Zone Etc/GMT 0 - GMT
-Zone Etc/UTC 0 - UTC
-Zone Etc/UCT 0 - UCT
-
-# The following link uses older naming conventions,
-# but it belongs here, not in the file `backward',
-# as functions like gmtime load the "GMT" file to handle leap seconds properly.
-# We want this to work even on installations that omit the other older names.
-Link Etc/GMT GMT
-
-Link Etc/UTC Etc/Universal
-Link Etc/UTC Etc/Zulu
-
-Link Etc/GMT Etc/Greenwich
-Link Etc/GMT Etc/GMT-0
-Link Etc/GMT Etc/GMT+0
-Link Etc/GMT Etc/GMT0
-
-# We use POSIX-style signs in the Zone names and the output abbreviations,
-# even though this is the opposite of what many people expect.
-# POSIX has positive signs west of Greenwich, but many people expect
-# positive signs east of Greenwich. For example, TZ='Etc/GMT+4' uses
-# the abbreviation "GMT+4" and corresponds to 4 hours behind UTC
-# (i.e. west of Greenwich) even though many people would expect it to
-# mean 4 hours ahead of UTC (i.e. east of Greenwich).
-#
-# In the draft 5 of POSIX 1003.1-200x, the angle bracket notation
-# (which is not yet supported by the tz code) allows for
-# TZ='<GMT-4>+4'; if you want time zone abbreviations conforming to
-# ISO 8601 you can use TZ='<-0400>+4'. Thus the commonly-expected
-# offset is kept within the angle bracket (and is used for display)
-# while the POSIX sign is kept outside the angle bracket (and is used
-# for calculation).
-#
-# Do not use a TZ setting like TZ='GMT+4', which is four hours behind
-# GMT but uses the completely misleading abbreviation "GMT".
-
-# Earlier incarnations of this package were not POSIX-compliant,
-# and had lines such as
-# Zone GMT-12 -12 - GMT-1200
-# We did not want things to change quietly if someone accustomed to the old
-# way does a
-# zic -l GMT-12
-# so we moved the names into the Etc subdirectory.
-
-Zone Etc/GMT-14 14 - GMT-14 # 14 hours ahead of GMT
-Zone Etc/GMT-13 13 - GMT-13
-Zone Etc/GMT-12 12 - GMT-12
-Zone Etc/GMT-11 11 - GMT-11
-Zone Etc/GMT-10 10 - GMT-10
-Zone Etc/GMT-9 9 - GMT-9
-Zone Etc/GMT-8 8 - GMT-8
-Zone Etc/GMT-7 7 - GMT-7
-Zone Etc/GMT-6 6 - GMT-6
-Zone Etc/GMT-5 5 - GMT-5
-Zone Etc/GMT-4 4 - GMT-4
-Zone Etc/GMT-3 3 - GMT-3
-Zone Etc/GMT-2 2 - GMT-2
-Zone Etc/GMT-1 1 - GMT-1
-Zone Etc/GMT+1 -1 - GMT+1
-Zone Etc/GMT+2 -2 - GMT+2
-Zone Etc/GMT+3 -3 - GMT+3
-Zone Etc/GMT+4 -4 - GMT+4
-Zone Etc/GMT+5 -5 - GMT+5
-Zone Etc/GMT+6 -6 - GMT+6
-Zone Etc/GMT+7 -7 - GMT+7
-Zone Etc/GMT+8 -8 - GMT+8
-Zone Etc/GMT+9 -9 - GMT+9
-Zone Etc/GMT+10 -10 - GMT+10
-Zone Etc/GMT+11 -11 - GMT+11
-Zone Etc/GMT+12 -12 - GMT+12
diff --git a/tools/zoneinfo/tzdata2008h/europe b/tools/zoneinfo/tzdata2008h/europe
deleted file mode 100644
index 7bb9864..0000000
--- a/tools/zoneinfo/tzdata2008h/europe
+++ /dev/null
@@ -1,2594 +0,0 @@
-# @(#)europe 8.18
-# <pre>
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@elsie.nci.nih.gov for general use in the future).
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually. Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1991, and IATA SSIM is the source for entries afterwards.
-#
-# Other sources occasionally used include:
-#
-# Edward W. Whitman, World Time Differences,
-# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated),
-# which I found in the UCLA library.
-#
-# <a href="http://www.pettswoodvillage.co.uk/Daylight_Savings_William_Willett.pdf">
-# William Willett, The Waste of Daylight, 19th edition
-# </a> (1914-03)
-#
-# Brazil's Departamento Servico da Hora (DSH),
-# <a href="http://pcdsh01.on.br/HISTHV.htm">
-# History of Summer Time
-# </a> (1998-09-21, in Portuguese)
-
-#
-# I invented the abbreviations marked `*' in the following table;
-# the rest are from earlier versions of this file, or from other sources.
-# Corrections are welcome!
-# std dst 2dst
-# LMT Local Mean Time
-# -4:00 AST ADT Atlantic
-# -3:00 WGT WGST Western Greenland*
-# -1:00 EGT EGST Eastern Greenland*
-# 0:00 GMT BST BDST Greenwich, British Summer
-# 0:00 GMT IST Greenwich, Irish Summer
-# 0:00 WET WEST WEMT Western Europe
-# 0:19:32.13 AMT NST Amsterdam, Netherlands Summer (1835-1937)*
-# 0:20 NET NEST Netherlands (1937-1940)*
-# 1:00 CET CEST CEMT Central Europe
-# 1:00:14 SET Swedish (1879-1899)*
-# 2:00 EET EEST Eastern Europe
-# 3:00 MSK MSD Moscow
-#
-# A reliable and entertaining source about time zones, especially in Britain,
-# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
-
-# From Peter Ilieve (1994-12-04),
-# The original six [EU members]: Belgium, France, (West) Germany, Italy,
-# Luxembourg, the Netherlands.
-# Plus, from 1 Jan 73: Denmark, Ireland, United Kingdom.
-# Plus, from 1 Jan 81: Greece.
-# Plus, from 1 Jan 86: Spain, Portugal.
-# Plus, from 1 Jan 95: Austria, Finland, Sweden. (Norway negotiated terms for
-# entry but in a referendum on 28 Nov 94 the people voted No by 52.2% to 47.8%
-# on a turnout of 88.6%. This was almost the same result as Norway's previous
-# referendum in 1972, they are the only country to have said No twice.
-# Referendums in the other three countries voted Yes.)
-# ...
-# Estonia ... uses EU dates but not at 01:00 GMT, they use midnight GMT.
-# I don't think they know yet what they will do from 1996 onwards.
-# ...
-# There shouldn't be any [current members who are not using EU rules].
-# A Directive has the force of law, member states are obliged to enact
-# national law to implement it. The only contentious issue was the
-# different end date for the UK and Ireland, and this was always allowed
-# in the Directive.
-
-
-###############################################################################
-
-# Britain (United Kingdom) and Ireland (Eire)
-
-# From Peter Ilieve (1994-07-06):
-#
-# On 17 Jan 1994 the Independent, a UK quality newspaper, had a piece about
-# historical vistas along the Thames in west London. There was a photo
-# and a sketch map showing some of the sightlines involved. One paragraph
-# of the text said:
-#
-# `An old stone obelisk marking a forgotten terrestrial meridian stands
-# beside the river at Kew. In the 18th century, before time and longitude
-# was standardised by the Royal Observatory in Greenwich, scholars observed
-# this stone and the movement of stars from Kew Observatory nearby. They
-# made their calculations and set the time for the Horse Guards and Parliament,
-# but now the stone is obscured by scrubwood and can only be seen by walking
-# along the towpath within a few yards of it.'
-#
-# I have a one inch to one mile map of London and my estimate of the stone's
-# position is 51 deg. 28' 30" N, 0 deg. 18' 45" W. The longitude should
-# be within about +-2". The Ordnance Survey grid reference is TQ172761.
-#
-# [This yields GMTOFF = -0:01:15 for London LMT in the 18th century.]
-
-# From Paul Eggert (1993-11-18):
-#
-# Howse writes that Britain was the first country to use standard time.
-# The railways cared most about the inconsistencies of local mean time,
-# and it was they who forced a uniform time on the country.
-# The original idea was credited to Dr. William Hyde Wollaston (1766-1828)
-# and was popularized by Abraham Follett Osler (1808-1903).
-# The first railway to adopt London time was the Great Western Railway
-# in November 1840; other railways followed suit, and by 1847 most
-# (though not all) railways used London time. On 1847-09-22 the
-# Railway Clearing House, an industry standards body, recommended that GMT be
-# adopted at all stations as soon as the General Post Office permitted it.
-# The transition occurred on 12-01 for the L&NW, the Caledonian,
-# and presumably other railways; the January 1848 Bradshaw's lists many
-# railways as using GMT. By 1855 the vast majority of public
-# clocks in Britain were set to GMT (though some, like the great clock
-# on Tom Tower at Christ Church, Oxford, were fitted with two minute hands,
-# one for local time and one for GMT). The last major holdout was the legal
-# system, which stubbornly stuck to local time for many years, leading
-# to oddities like polls opening at 08:13 and closing at 16:13.
-# The legal system finally switched to GMT when the Statutes (Definition
-# of Time) Act took effect; it received the Royal Assent on 1880-08-02.
-#
-# In the tables below, we condense this complicated story into a single
-# transition date for London, namely 1847-12-01. We don't know as much
-# about Dublin, so we use 1880-08-02, the legal transition time.
-
-# From Paul Eggert (2003-09-27):
-# Summer Time was first seriously proposed by William Willett (1857-1915),
-# a London builder and member of the Royal Astronomical Society
-# who circulated a pamphlet ``The Waste of Daylight'' (1907)
-# that proposed advancing clocks 20 minutes on each of four Sundays in April,
-# and retarding them by the same amount on four Sundays in September.
-# A bill was drafted in 1909 and introduced in Parliament several times,
-# but it met with ridicule and opposition, especially from farming interests.
-# Later editions of the pamphlet proposed one-hour summer time, and
-# it was eventually adopted as a wartime measure in 1916.
-# See: Summer Time Arrives Early, The Times (2000-05-18).
-# A monument to Willett was unveiled on 1927-05-21, in an open space in
-# a 45-acre wood near Chislehurst, Kent that was purchased by popular
-# subscription and open to the public. On the south face of the monolith,
-# designed by G. W. Miller, is the the William Willett Memorial Sundial,
-# which is permanently set to Summer Time.
-
-# From Winston Churchill (1934-04-28):
-# It is one of the paradoxes of history that we should owe the boon of
-# summer time, which gives every year to the people of this country
-# between 160 and 170 hours more daylight leisure, to a war which
-# plunged Europe into darkness for four years, and shook the
-# foundations of civilization throughout the world.
-# -- <a href="http://www.winstonchurchill.org/fh114willett.htm">
-# "A Silent Toast to William Willett", Pictorial Weekly
-# </a>
-
-# From Paul Eggert (1996-09-03):
-# The OED Supplement says that the English originally said ``Daylight Saving''
-# when they were debating the adoption of DST in 1908; but by 1916 this
-# term appears only in quotes taken from DST's opponents, whereas the
-# proponents (who eventually won the argument) are quoted as using ``Summer''.
-
-# From Arthur David Olson (1989-01-19):
-#
-# A source at the British Information Office in New York avers that it's
-# known as "British" Summer Time in all parts of the United Kingdom.
-
-# Date: 4 Jan 89 08:57:25 GMT (Wed)
-# From: Jonathan Leffler
-# [British Summer Time] is fixed annually by Act of Parliament.
-# If you can predict what Parliament will do, you should be in
-# politics making a fortune, not computing.
-
-# From Chris Carrier (1996-06-14):
-# I remember reading in various wartime issues of the London Times the
-# acronym BDST for British Double Summer Time. Look for the published
-# time of sunrise and sunset in The Times, when BDST was in effect, and
-# if you find a zone reference it will say, "All times B.D.S.T."
-
-# From Joseph S. Myers (1999-09-02):
-# ... some military cables (WO 219/4100 - this is a copy from the
-# main SHAEF archives held in the US National Archives, SHAEF/5252/8/516)
-# agree that the usage is BDST (this appears in a message dated 17 Feb 1945).
-
-# From Joseph S. Myers (2000-10-03):
-# On 18th April 1941, Sir Stephen Tallents of the BBC wrote to Sir
-# Alexander Maxwell of the Home Office asking whether there was any
-# official designation; the reply of the 21st was that there wasn't
-# but he couldn't think of anything better than the "Double British
-# Summer Time" that the BBC had been using informally.
-# http://student.cusu.cam.ac.uk/~jsm28/british-time/bbc-19410418.png
-# http://student.cusu.cam.ac.uk/~jsm28/british-time/ho-19410421.png
-
-# From Sir Alexander Maxwell in the above-mentioned letter (1941-04-21):
-# [N]o official designation has as far as I know been adopted for the time
-# which is to be introduced in May....
-# I cannot think of anything better than "Double British Summer Time"
-# which could not be said to run counter to any official description.
-
-# From Paul Eggert (2000-10-02):
-# Howse writes (p 157) `DBST' too, but `BDST' seems to have been common
-# and follows the more usual convention of putting the location name first,
-# so we use `BDST'.
-
-# Peter Ilieve (1998-04-19) described at length
-# the history of summer time legislation in the United Kingdom.
-# Since 1998 Joseph S. Myers has been updating
-# and extending this list, which can be found in
-# <a href="http://student.cusu.cam.ac.uk/~jsm28/british-time/">
-# History of legal time in Britain
-# </a>
-
-# From Joseph S. Myers (1998-01-06):
-#
-# The legal time in the UK outside of summer time is definitely GMT, not UTC;
-# see Lord Tanlaw's speech
-# <a href="http://www.parliament.the-stationery-office.co.uk/pa/ld199697/ldhansrd/pdvn/lds97/text/70611-20.htm#70611-20_head0">
-# (Lords Hansard 11 June 1997 columns 964 to 976)
-# </a>.
-
-# From Paul Eggert (2006-03-22):
-#
-# For lack of other data, follow Shanks & Pottenger for Eire in 1940-1948.
-#
-# Given Ilieve and Myers's data, the following claims by Shanks & Pottenger
-# are incorrect:
-# * Wales did not switch from GMT to daylight saving time until
-# 1921 Apr 3, when they began to conform with the rest of Great Britain.
-# Actually, Wales was identical after 1880.
-# * Eire had two transitions on 1916 Oct 1.
-# It actually just had one transition.
-# * Northern Ireland used single daylight saving time throughout WW II.
-# Actually, it conformed to Britain.
-# * GB-Eire changed standard time to 1 hour ahead of GMT on 1968-02-18.
-# Actually, that date saw the usual switch to summer time.
-# Standard time was not changed until 1968-10-27 (the clocks didn't change).
-#
-# Here is another incorrect claim by Shanks & Pottenger:
-# * Jersey, Guernsey, and the Isle of Man did not switch from GMT
-# to daylight saving time until 1921 Apr 3, when they began to
-# conform with Great Britain.
-# S.R.&O. 1916, No. 382 and HO 45/10811/312364 (quoted above) say otherwise.
-#
-# The following claim by Shanks & Pottenger is possible though doubtful;
-# we'll ignore it for now.
-# * Dublin's 1971-10-31 switch was at 02:00, even though London's was 03:00.
-#
-#
-# Whitman says Dublin Mean Time was -0:25:21, which is more precise than
-# Shanks & Pottenger.
-# Perhaps this was Dunsink Observatory Time, as Dunsink Observatory
-# (8 km NW of Dublin's center) seemingly was to Dublin as Greenwich was
-# to London. For example:
-#
-# "Timeball on the ballast office is down. Dunsink time."
-# -- James Joyce, Ulysses
-
-# From Joseph S. Myers (2005-01-26):
-# Irish laws are available online at www.irishstatutebook.ie. These include
-# various relating to legal time, for example:
-#
-# ZZA13Y1923.html ZZA12Y1924.html ZZA8Y1925.html ZZSIV20PG1267.html
-#
-# ZZSI71Y1947.html ZZSI128Y1948.html ZZSI23Y1949.html ZZSI41Y1950.html
-# ZZSI27Y1951.html ZZSI73Y1952.html
-#
-# ZZSI11Y1961.html ZZSI232Y1961.html ZZSI182Y1962.html
-# ZZSI167Y1963.html ZZSI257Y1964.html ZZSI198Y1967.html
-# ZZA23Y1968.html ZZA17Y1971.html
-#
-# ZZSI67Y1981.html ZZSI212Y1982.html ZZSI45Y1986.html
-# ZZSI264Y1988.html ZZSI52Y1990.html ZZSI371Y1992.html
-# ZZSI395Y1994.html ZZSI484Y1997.html ZZSI506Y2001.html
-#
-# [These are all relative to the root, e.g., the first is
-# <http://www.irishstatutebook.ie/ZZA13Y1923.html>.]
-#
-# (These are those I found, but there could be more. In any case these
-# should allow various updates to the comments in the europe file to cover
-# the laws applicable in Ireland.)
-#
-# (Note that the time in the Republic of Ireland since 1968 has been defined
-# in terms of standard time being GMT+1 with a period of winter time when it
-# is GMT, rather than standard time being GMT with a period of summer time
-# being GMT+1.)
-
-# From Paul Eggert (1999-03-28):
-# Clive Feather (<news:859845706.26043.0@office.demon.net>, 1997-03-31)
-# reports that Folkestone (Cheriton) Shuttle Terminal uses Concession Time
-# (CT), equivalent to French civil time.
-# Julian Hill (<news:36118128.5A14@virgin.net>, 1998-09-30) reports that
-# trains between Dollands Moor (the freight facility next door)
-# and Frethun run in CT.
-# My admittedly uninformed guess is that the terminal has two authorities,
-# the French concession operators and the British civil authorities,
-# and that the time depends on who you're talking to.
-# If, say, the British police were called to the station for some reason,
-# I would expect the official police report to use GMT/BST and not CET/CEST.
-# This is a borderline case, but for now let's stick to GMT/BST.
-
-# From an anonymous contributor (1996-06-02):
-# The law governing time in Ireland is under Statutory Instrument SI 395/94,
-# which gives force to European Union 7th Council Directive # 94/21/EC.
-# Under this directive, the Minister for Justice in Ireland makes appropriate
-# regulations. I spoke this morning with the Secretary of the Department of
-# Justice (tel +353 1 678 9711) who confirmed to me that the correct name is
-# "Irish Summer Time", abbreviated to "IST".
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# Summer Time Act, 1916
-Rule GB-Eire 1916 only - May 21 2:00s 1:00 BST
-Rule GB-Eire 1916 only - Oct 1 2:00s 0 GMT
-# S.R.&O. 1917, No. 358
-Rule GB-Eire 1917 only - Apr 8 2:00s 1:00 BST
-Rule GB-Eire 1917 only - Sep 17 2:00s 0 GMT
-# S.R.&O. 1918, No. 274
-Rule GB-Eire 1918 only - Mar 24 2:00s 1:00 BST
-Rule GB-Eire 1918 only - Sep 30 2:00s 0 GMT
-# S.R.&O. 1919, No. 297
-Rule GB-Eire 1919 only - Mar 30 2:00s 1:00 BST
-Rule GB-Eire 1919 only - Sep 29 2:00s 0 GMT
-# S.R.&O. 1920, No. 458
-Rule GB-Eire 1920 only - Mar 28 2:00s 1:00 BST
-# S.R.&O. 1920, No. 1844
-Rule GB-Eire 1920 only - Oct 25 2:00s 0 GMT
-# S.R.&O. 1921, No. 363
-Rule GB-Eire 1921 only - Apr 3 2:00s 1:00 BST
-Rule GB-Eire 1921 only - Oct 3 2:00s 0 GMT
-# S.R.&O. 1922, No. 264
-Rule GB-Eire 1922 only - Mar 26 2:00s 1:00 BST
-Rule GB-Eire 1922 only - Oct 8 2:00s 0 GMT
-# The Summer Time Act, 1922
-Rule GB-Eire 1923 only - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1923 1924 - Sep Sun>=16 2:00s 0 GMT
-Rule GB-Eire 1924 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1925 1926 - Apr Sun>=16 2:00s 1:00 BST
-# The Summer Time Act, 1925
-Rule GB-Eire 1925 1938 - Oct Sun>=2 2:00s 0 GMT
-Rule GB-Eire 1927 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1928 1929 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1930 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1931 1932 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1933 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1934 only - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1935 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1936 1937 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1938 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1939 only - Apr Sun>=16 2:00s 1:00 BST
-# S.R.&O. 1939, No. 1379
-Rule GB-Eire 1939 only - Nov Sun>=16 2:00s 0 GMT
-# S.R.&O. 1940, No. 172 and No. 1883
-Rule GB-Eire 1940 only - Feb Sun>=23 2:00s 1:00 BST
-# S.R.&O. 1941, No. 476
-Rule GB-Eire 1941 only - May Sun>=2 1:00s 2:00 BDST
-Rule GB-Eire 1941 1943 - Aug Sun>=9 1:00s 1:00 BST
-# S.R.&O. 1942, No. 506
-Rule GB-Eire 1942 1944 - Apr Sun>=2 1:00s 2:00 BDST
-# S.R.&O. 1944, No. 932
-Rule GB-Eire 1944 only - Sep Sun>=16 1:00s 1:00 BST
-# S.R.&O. 1945, No. 312
-Rule GB-Eire 1945 only - Apr Mon>=2 1:00s 2:00 BDST
-Rule GB-Eire 1945 only - Jul Sun>=9 1:00s 1:00 BST
-# S.R.&O. 1945, No. 1208
-Rule GB-Eire 1945 1946 - Oct Sun>=2 2:00s 0 GMT
-Rule GB-Eire 1946 only - Apr Sun>=9 2:00s 1:00 BST
-# The Summer Time Act, 1947
-Rule GB-Eire 1947 only - Mar 16 2:00s 1:00 BST
-Rule GB-Eire 1947 only - Apr 13 1:00s 2:00 BDST
-Rule GB-Eire 1947 only - Aug 10 1:00s 1:00 BST
-Rule GB-Eire 1947 only - Nov 2 2:00s 0 GMT
-# Summer Time Order, 1948 (S.I. 1948/495)
-Rule GB-Eire 1948 only - Mar 14 2:00s 1:00 BST
-Rule GB-Eire 1948 only - Oct 31 2:00s 0 GMT
-# Summer Time Order, 1949 (S.I. 1949/373)
-Rule GB-Eire 1949 only - Apr 3 2:00s 1:00 BST
-Rule GB-Eire 1949 only - Oct 30 2:00s 0 GMT
-# Summer Time Order, 1950 (S.I. 1950/518)
-# Summer Time Order, 1951 (S.I. 1951/430)
-# Summer Time Order, 1952 (S.I. 1952/451)
-Rule GB-Eire 1950 1952 - Apr Sun>=14 2:00s 1:00 BST
-Rule GB-Eire 1950 1952 - Oct Sun>=21 2:00s 0 GMT
-# revert to the rules of the Summer Time Act, 1925
-Rule GB-Eire 1953 only - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1953 1960 - Oct Sun>=2 2:00s 0 GMT
-Rule GB-Eire 1954 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1955 1956 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1957 only - Apr Sun>=9 2:00s 1:00 BST
-Rule GB-Eire 1958 1959 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1960 only - Apr Sun>=9 2:00s 1:00 BST
-# Summer Time Order, 1961 (S.I. 1961/71)
-# Summer Time (1962) Order, 1961 (S.I. 1961/2465)
-# Summer Time Order, 1963 (S.I. 1963/81)
-Rule GB-Eire 1961 1963 - Mar lastSun 2:00s 1:00 BST
-Rule GB-Eire 1961 1968 - Oct Sun>=23 2:00s 0 GMT
-# Summer Time (1964) Order, 1963 (S.I. 1963/2101)
-# Summer Time Order, 1964 (S.I. 1964/1201)
-# Summer Time Order, 1967 (S.I. 1967/1148)
-Rule GB-Eire 1964 1967 - Mar Sun>=19 2:00s 1:00 BST
-# Summer Time Order, 1968 (S.I. 1968/117)
-Rule GB-Eire 1968 only - Feb 18 2:00s 1:00 BST
-# The British Standard Time Act, 1968
-# (no summer time)
-# The Summer Time Act, 1972
-Rule GB-Eire 1972 1980 - Mar Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1972 1980 - Oct Sun>=23 2:00s 0 GMT
-# Summer Time Order, 1980 (S.I. 1980/1089)
-# Summer Time Order, 1982 (S.I. 1982/1673)
-# Summer Time Order, 1986 (S.I. 1986/223)
-# Summer Time Order, 1988 (S.I. 1988/931)
-Rule GB-Eire 1981 1995 - Mar lastSun 1:00u 1:00 BST
-Rule GB-Eire 1981 1989 - Oct Sun>=23 1:00u 0 GMT
-# Summer Time Order, 1989 (S.I. 1989/985)
-# Summer Time Order, 1992 (S.I. 1992/1729)
-# Summer Time Order 1994 (S.I. 1994/2798)
-Rule GB-Eire 1990 1995 - Oct Sun>=22 1:00u 0 GMT
-# Summer Time Order 1997 (S.I. 1997/2982)
-# See EU for rules starting in 1996.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s
- 0:00 GB-Eire %s 1968 Oct 27
- 1:00 - BST 1971 Oct 31 2:00u
- 0:00 GB-Eire %s 1996
- 0:00 EU GMT/BST
-Link Europe/London Europe/Jersey
-Link Europe/London Europe/Guernsey
-Link Europe/London Europe/Isle_of_Man
-Zone Europe/Dublin -0:25:00 - LMT 1880 Aug 2
- -0:25:21 - DMT 1916 May 21 2:00
- -0:25:21 1:00 IST 1916 Oct 1 2:00s
- 0:00 GB-Eire %s 1921 Dec 6 # independence
- 0:00 GB-Eire GMT/IST 1940 Feb 25 2:00
- 0:00 1:00 IST 1946 Oct 6 2:00
- 0:00 - GMT 1947 Mar 16 2:00
- 0:00 1:00 IST 1947 Nov 2 2:00
- 0:00 - GMT 1948 Apr 18 2:00
- 0:00 GB-Eire GMT/IST 1968 Oct 27
- 1:00 - IST 1971 Oct 31 2:00u
- 0:00 GB-Eire GMT/IST 1996
- 0:00 EU GMT/IST
-
-###############################################################################
-
-# Europe
-
-# EU rules are for the European Union, previously known as the EC, EEC,
-# Common Market, etc.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule EU 1977 1980 - Apr Sun>=1 1:00u 1:00 S
-Rule EU 1977 only - Sep lastSun 1:00u 0 -
-Rule EU 1978 only - Oct 1 1:00u 0 -
-Rule EU 1979 1995 - Sep lastSun 1:00u 0 -
-Rule EU 1981 max - Mar lastSun 1:00u 1:00 S
-Rule EU 1996 max - Oct lastSun 1:00u 0 -
-# The most recent directive covers the years starting in 2002. See:
-# <a href="http://europa.eu.int/eur-lex/en/lif/dat/2000/en_300L0084.html">
-# Directive 2000/84/EC of the European Parliament and of the Council
-# of 19 January 2001 on summer-time arrangements.
-# </a>
-
-# W-Eur differs from EU only in that W-Eur uses standard time.
-Rule W-Eur 1977 1980 - Apr Sun>=1 1:00s 1:00 S
-Rule W-Eur 1977 only - Sep lastSun 1:00s 0 -
-Rule W-Eur 1978 only - Oct 1 1:00s 0 -
-Rule W-Eur 1979 1995 - Sep lastSun 1:00s 0 -
-Rule W-Eur 1981 max - Mar lastSun 1:00s 1:00 S
-Rule W-Eur 1996 max - Oct lastSun 1:00s 0 -
-
-# Older C-Eur rules are for convenience in the tables.
-# From 1977 on, C-Eur differs from EU only in that C-Eur uses standard time.
-Rule C-Eur 1916 only - Apr 30 23:00 1:00 S
-Rule C-Eur 1916 only - Oct 1 1:00 0 -
-Rule C-Eur 1917 1918 - Apr Mon>=15 2:00s 1:00 S
-Rule C-Eur 1917 1918 - Sep Mon>=15 2:00s 0 -
-Rule C-Eur 1940 only - Apr 1 2:00s 1:00 S
-Rule C-Eur 1942 only - Nov 2 2:00s 0 -
-Rule C-Eur 1943 only - Mar 29 2:00s 1:00 S
-Rule C-Eur 1943 only - Oct 4 2:00s 0 -
-Rule C-Eur 1944 1945 - Apr Mon>=1 2:00s 1:00 S
-# Whitman gives 1944 Oct 7; go with Shanks & Pottenger.
-Rule C-Eur 1944 only - Oct 2 2:00s 0 -
-# From Jesper Norgaard Welen (2008-07-13):
-#
-# I found what is probably a typo of 2:00 which should perhaps be 2:00s
-# in the C-Eur rule from tz database version 2008d (this part was
-# corrected in version 2008d). The circumstancial evidence is simply the
-# tz database itself, as seen below:
-#
-# Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
-# 0:00 France WE%sT 1945 Sep 16 3:00
-#
-# Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
-# 0:00 France WE%sT 1945 Sep 16 3:00
-#
-# Zone Europe/Belgrade 1:22:00 - LMT 1884
-# 1:00 1:00 CEST 1945 Sep 16 2:00s
-#
-# Rule France 1945 only - Sep 16 3:00 0 -
-# Rule Belgium 1945 only - Sep 16 2:00s 0 -
-# Rule Neth 1945 only - Sep 16 2:00s 0 -
-#
-# The rule line to be changed is:
-#
-# Rule C-Eur 1945 only - Sep 16 2:00 0 -
-#
-# It seems that Paris, Monaco, Rule France, Rule Belgium all agree on
-# 2:00 standard time, e.g. 3:00 local time. However there are no
-# countries that use C-Eur rules in September 1945, so the only items
-# affected are apparently these ficticious zones that translates acronyms
-# CET and MET:
-#
-# Zone CET 1:00 C-Eur CE%sT
-# Zone MET 1:00 C-Eur ME%sT
-#
-# It this is right then the corrected version would look like:
-#
-# Rule C-Eur 1945 only - Sep 16 2:00s 0 -
-#
-# A small step for mankind though 8-)
-Rule C-Eur 1945 only - Sep 16 2:00s 0 -
-Rule C-Eur 1977 1980 - Apr Sun>=1 2:00s 1:00 S
-Rule C-Eur 1977 only - Sep lastSun 2:00s 0 -
-Rule C-Eur 1978 only - Oct 1 2:00s 0 -
-Rule C-Eur 1979 1995 - Sep lastSun 2:00s 0 -
-Rule C-Eur 1981 max - Mar lastSun 2:00s 1:00 S
-Rule C-Eur 1996 max - Oct lastSun 2:00s 0 -
-
-# E-Eur differs from EU only in that E-Eur switches at midnight local time.
-Rule E-Eur 1977 1980 - Apr Sun>=1 0:00 1:00 S
-Rule E-Eur 1977 only - Sep lastSun 0:00 0 -
-Rule E-Eur 1978 only - Oct 1 0:00 0 -
-Rule E-Eur 1979 1995 - Sep lastSun 0:00 0 -
-Rule E-Eur 1981 max - Mar lastSun 0:00 1:00 S
-Rule E-Eur 1996 max - Oct lastSun 0:00 0 -
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time
-Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time
-Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time
-Rule Russia 1918 only - Sep 16 1:00 1:00 MST
-Rule Russia 1919 only - May 31 23:00 2:00 MDST
-Rule Russia 1919 only - Jul 1 2:00 1:00 S
-Rule Russia 1919 only - Aug 16 0:00 0 -
-Rule Russia 1921 only - Feb 14 23:00 1:00 S
-Rule Russia 1921 only - Mar 20 23:00 2:00 M # Midsummer
-Rule Russia 1921 only - Sep 1 0:00 1:00 S
-Rule Russia 1921 only - Oct 1 0:00 0 -
-# Act No.925 of the Council of Ministers of the USSR (1980-10-24):
-Rule Russia 1981 1984 - Apr 1 0:00 1:00 S
-Rule Russia 1981 1983 - Oct 1 0:00 0 -
-# Act No.967 of the Council of Ministers of the USSR (1984-09-13), repeated in
-# Act No.227 of the Council of Ministers of the USSR (1989-03-14):
-Rule Russia 1984 1991 - Sep lastSun 2:00s 0 -
-Rule Russia 1985 1991 - Mar lastSun 2:00s 1:00 S
-#
-Rule Russia 1992 only - Mar lastSat 23:00 1:00 S
-Rule Russia 1992 only - Sep lastSat 23:00 0 -
-Rule Russia 1993 max - Mar lastSun 2:00s 1:00 S
-Rule Russia 1993 1995 - Sep lastSun 2:00s 0 -
-Rule Russia 1996 max - Oct lastSun 2:00s 0 -
-
-# These are for backward compatibility with older versions.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone WET 0:00 EU WE%sT
-Zone CET 1:00 C-Eur CE%sT
-Zone MET 1:00 C-Eur ME%sT
-Zone EET 2:00 EU EE%sT
-
-# Previous editions of this database used abbreviations like MET DST
-# for Central European Summer Time, but this didn't agree with common usage.
-
-# From Markus Kuhn (1996-07-12):
-# The official German names ... are
-#
-# Mitteleuropaeische Zeit (MEZ) = UTC+01:00
-# Mitteleuropaeische Sommerzeit (MESZ) = UTC+02:00
-#
-# as defined in the German Time Act (Gesetz ueber die Zeitbestimmung (ZeitG),
-# 1978-07-25, Bundesgesetzblatt, Jahrgang 1978, Teil I, S. 1110-1111)....
-# I wrote ... to the German Federal Physical-Technical Institution
-#
-# Physikalisch-Technische Bundesanstalt (PTB)
-# Laboratorium 4.41 "Zeiteinheit"
-# Postfach 3345
-# D-38023 Braunschweig
-# phone: +49 531 592-0
-#
-# ... I received today an answer letter from Dr. Peter Hetzel, head of the PTB
-# department for time and frequency transmission. He explained that the
-# PTB translates MEZ and MESZ into English as
-#
-# Central European Time (CET) = UTC+01:00
-# Central European Summer Time (CEST) = UTC+02:00
-
-
-# Albania
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Albania 1940 only - Jun 16 0:00 1:00 S
-Rule Albania 1942 only - Nov 2 3:00 0 -
-Rule Albania 1943 only - Mar 29 2:00 1:00 S
-Rule Albania 1943 only - Apr 10 3:00 0 -
-Rule Albania 1974 only - May 4 0:00 1:00 S
-Rule Albania 1974 only - Oct 2 0:00 0 -
-Rule Albania 1975 only - May 1 0:00 1:00 S
-Rule Albania 1975 only - Oct 2 0:00 0 -
-Rule Albania 1976 only - May 2 0:00 1:00 S
-Rule Albania 1976 only - Oct 3 0:00 0 -
-Rule Albania 1977 only - May 8 0:00 1:00 S
-Rule Albania 1977 only - Oct 2 0:00 0 -
-Rule Albania 1978 only - May 6 0:00 1:00 S
-Rule Albania 1978 only - Oct 1 0:00 0 -
-Rule Albania 1979 only - May 5 0:00 1:00 S
-Rule Albania 1979 only - Sep 30 0:00 0 -
-Rule Albania 1980 only - May 3 0:00 1:00 S
-Rule Albania 1980 only - Oct 4 0:00 0 -
-Rule Albania 1981 only - Apr 26 0:00 1:00 S
-Rule Albania 1981 only - Sep 27 0:00 0 -
-Rule Albania 1982 only - May 2 0:00 1:00 S
-Rule Albania 1982 only - Oct 3 0:00 0 -
-Rule Albania 1983 only - Apr 18 0:00 1:00 S
-Rule Albania 1983 only - Oct 1 0:00 0 -
-Rule Albania 1984 only - Apr 1 0:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Tirane 1:19:20 - LMT 1914
- 1:00 - CET 1940 Jun 16
- 1:00 Albania CE%sT 1984 Jul
- 1:00 EU CE%sT
-
-# Andorra
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Andorra 0:06:04 - LMT 1901
- 0:00 - WET 1946 Sep 30
- 1:00 - CET 1985 Mar 31 2:00
- 1:00 EU CE%sT
-
-# Austria
-
-# From Paul Eggert (2006-03-22): Shanks & Pottenger give 1918-06-16 and
-# 1945-11-18, but the Austrian Federal Office of Metrology and
-# Surveying (BEV) gives 1918-09-16 and for Vienna gives the "alleged"
-# date of 1945-04-12 with no time. For the 1980-04-06 transition
-# Shanks & Pottenger give 02:00, the BEV 00:00. Go with the BEV,
-# and guess 02:00 for 1945-04-12.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Austria 1920 only - Apr 5 2:00s 1:00 S
-Rule Austria 1920 only - Sep 13 2:00s 0 -
-Rule Austria 1946 only - Apr 14 2:00s 1:00 S
-Rule Austria 1946 1948 - Oct Sun>=1 2:00s 0 -
-Rule Austria 1947 only - Apr 6 2:00s 1:00 S
-Rule Austria 1948 only - Apr 18 2:00s 1:00 S
-Rule Austria 1980 only - Apr 6 0:00 1:00 S
-Rule Austria 1980 only - Sep 28 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Vienna 1:05:20 - LMT 1893 Apr
- 1:00 C-Eur CE%sT 1920
- 1:00 Austria CE%sT 1940 Apr 1 2:00s
- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
- 1:00 1:00 CEST 1945 Apr 12 2:00s
- 1:00 - CET 1946
- 1:00 Austria CE%sT 1981
- 1:00 EU CE%sT
-
-# Belarus
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Minsk 1:50:16 - LMT 1880
- 1:50 - MMT 1924 May 2 # Minsk Mean Time
- 2:00 - EET 1930 Jun 21
- 3:00 - MSK 1941 Jun 28
- 1:00 C-Eur CE%sT 1944 Jul 3
- 3:00 Russia MSK/MSD 1990
- 3:00 - MSK 1991 Mar 31 2:00s
- 2:00 1:00 EEST 1991 Sep 29 2:00s
- 2:00 - EET 1992 Mar 29 0:00s
- 2:00 1:00 EEST 1992 Sep 27 0:00s
- 2:00 Russia EE%sT
-
-# Belgium
-#
-# From Paul Eggert (1997-07-02):
-# Entries from 1918 through 1991 are taken from:
-# Annuaire de L'Observatoire Royal de Belgique,
-# Avenue Circulaire, 3, B-1180 BRUXELLES, CLVIIe annee, 1991
-# (Imprimerie HAYEZ, s.p.r.l., Rue Fin, 4, 1080 BRUXELLES, MCMXC),
-# pp 8-9.
-# LMT before 1892 was 0:17:30, according to the official journal of Belgium:
-# Moniteur Belge, Samedi 30 Avril 1892, N.121.
-# Thanks to Pascal Delmoitie for these references.
-# The 1918 rules are listed for completeness; they apply to unoccupied Belgium.
-# Assume Brussels switched to WET in 1918 when the armistice took effect.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Belgium 1918 only - Mar 9 0:00s 1:00 S
-Rule Belgium 1918 1919 - Oct Sat>=1 23:00s 0 -
-Rule Belgium 1919 only - Mar 1 23:00s 1:00 S
-Rule Belgium 1920 only - Feb 14 23:00s 1:00 S
-Rule Belgium 1920 only - Oct 23 23:00s 0 -
-Rule Belgium 1921 only - Mar 14 23:00s 1:00 S
-Rule Belgium 1921 only - Oct 25 23:00s 0 -
-Rule Belgium 1922 only - Mar 25 23:00s 1:00 S
-Rule Belgium 1922 1927 - Oct Sat>=1 23:00s 0 -
-Rule Belgium 1923 only - Apr 21 23:00s 1:00 S
-Rule Belgium 1924 only - Mar 29 23:00s 1:00 S
-Rule Belgium 1925 only - Apr 4 23:00s 1:00 S
-# DSH writes that a royal decree of 1926-02-22 specified the Sun following 3rd
-# Sat in Apr (except if it's Easter, in which case it's one Sunday earlier),
-# to Sun following 1st Sat in Oct, and that a royal decree of 1928-09-15
-# changed the transition times to 02:00 GMT.
-Rule Belgium 1926 only - Apr 17 23:00s 1:00 S
-Rule Belgium 1927 only - Apr 9 23:00s 1:00 S
-Rule Belgium 1928 only - Apr 14 23:00s 1:00 S
-Rule Belgium 1928 1938 - Oct Sun>=2 2:00s 0 -
-Rule Belgium 1929 only - Apr 21 2:00s 1:00 S
-Rule Belgium 1930 only - Apr 13 2:00s 1:00 S
-Rule Belgium 1931 only - Apr 19 2:00s 1:00 S
-Rule Belgium 1932 only - Apr 3 2:00s 1:00 S
-Rule Belgium 1933 only - Mar 26 2:00s 1:00 S
-Rule Belgium 1934 only - Apr 8 2:00s 1:00 S
-Rule Belgium 1935 only - Mar 31 2:00s 1:00 S
-Rule Belgium 1936 only - Apr 19 2:00s 1:00 S
-Rule Belgium 1937 only - Apr 4 2:00s 1:00 S
-Rule Belgium 1938 only - Mar 27 2:00s 1:00 S
-Rule Belgium 1939 only - Apr 16 2:00s 1:00 S
-Rule Belgium 1939 only - Nov 19 2:00s 0 -
-Rule Belgium 1940 only - Feb 25 2:00s 1:00 S
-Rule Belgium 1944 only - Sep 17 2:00s 0 -
-Rule Belgium 1945 only - Apr 2 2:00s 1:00 S
-Rule Belgium 1945 only - Sep 16 2:00s 0 -
-Rule Belgium 1946 only - May 19 2:00s 1:00 S
-Rule Belgium 1946 only - Oct 7 2:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Brussels 0:17:30 - LMT 1880
- 0:17:30 - BMT 1892 May 1 12:00 # Brussels MT
- 0:00 - WET 1914 Nov 8
- 1:00 - CET 1916 May 1 0:00
- 1:00 C-Eur CE%sT 1918 Nov 11 11:00u
- 0:00 Belgium WE%sT 1940 May 20 2:00s
- 1:00 C-Eur CE%sT 1944 Sep 3
- 1:00 Belgium CE%sT 1977
- 1:00 EU CE%sT
-
-# Bosnia and Herzegovina
-# see Serbia
-
-# Bulgaria
-#
-# From Plamen Simenov via Steffen Thorsen (1999-09-09):
-# A document of Government of Bulgaria (No.94/1997) says:
-# EET --> EETDST is in 03:00 Local time in last Sunday of March ...
-# EETDST --> EET is in 04:00 Local time in last Sunday of October
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Bulg 1979 only - Mar 31 23:00 1:00 S
-Rule Bulg 1979 only - Oct 1 1:00 0 -
-Rule Bulg 1980 1982 - Apr Sat>=1 23:00 1:00 S
-Rule Bulg 1980 only - Sep 29 1:00 0 -
-Rule Bulg 1981 only - Sep 27 2:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Sofia 1:33:16 - LMT 1880
- 1:56:56 - IMT 1894 Nov 30 # Istanbul MT?
- 2:00 - EET 1942 Nov 2 3:00
- 1:00 C-Eur CE%sT 1945
- 1:00 - CET 1945 Apr 2 3:00
- 2:00 - EET 1979 Mar 31 23:00
- 2:00 Bulg EE%sT 1982 Sep 26 2:00
- 2:00 C-Eur EE%sT 1991
- 2:00 E-Eur EE%sT 1997
- 2:00 EU EE%sT
-
-# Croatia
-# see Serbia
-
-# Cyprus
-# Please see the `asia' file for Asia/Nicosia.
-
-# Czech Republic
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Czech 1945 only - Apr 8 2:00s 1:00 S
-Rule Czech 1945 only - Nov 18 2:00s 0 -
-Rule Czech 1946 only - May 6 2:00s 1:00 S
-Rule Czech 1946 1949 - Oct Sun>=1 2:00s 0 -
-Rule Czech 1947 only - Apr 20 2:00s 1:00 S
-Rule Czech 1948 only - Apr 18 2:00s 1:00 S
-Rule Czech 1949 only - Apr 9 2:00s 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Prague 0:57:44 - LMT 1850
- 0:57:44 - PMT 1891 Oct # Prague Mean Time
- 1:00 C-Eur CE%sT 1944 Sep 17 2:00s
- 1:00 Czech CE%sT 1979
- 1:00 EU CE%sT
-
-# Denmark, Faroe Islands, and Greenland
-
-# From Jesper Norgaard Welen (2005-04-26):
-# http://www.hum.aau.dk/~poe/tid/tine/DanskTid.htm says that the law
-# [introducing standard time] was in effect from 1894-01-01....
-# The page http://www.retsinfo.dk/_GETDOCI_/ACCN/A18930008330-REGL
-# confirms this, and states that the law was put forth 1893-03-29.
-#
-# The EU treaty with effect from 1973:
-# http://www.retsinfo.dk/_GETDOCI_/ACCN/A19722110030-REGL
-#
-# This provoked a new law from 1974 to make possible summer time changes
-# in subsequenet decrees with the law
-# http://www.retsinfo.dk/_GETDOCI_/ACCN/A19740022330-REGL
-#
-# It seems however that no decree was set forward until 1980. I have
-# not found any decree, but in another related law, the effecting DST
-# changes are stated explicitly to be from 1980-04-06 at 02:00 to
-# 1980-09-28 at 02:00. If this is true, this differs slightly from
-# the EU rule in that DST runs to 02:00, not 03:00. We don't know
-# when Denmark began using the EU rule correctly, but we have only
-# confirmation of the 1980-time, so I presume it was correct in 1981:
-# The law is about the management of the extra hour, concerning
-# working hours reported and effect on obligatory-rest rules (which
-# was suspended on that night):
-# http://www.retsinfo.dk/_GETDOCI_/ACCN/C19801120554-REGL
-
-# From Jesper Norgaard Welen (2005-06-11):
-# The Herning Folkeblad (1980-09-26) reported that the night between
-# Saturday and Sunday the clock is set back from three to two.
-
-# From Paul Eggert (2005-06-11):
-# Hence the "02:00" of the 1980 law refers to standard time, not
-# wall-clock time, and so the EU rules were in effect in 1980.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Denmark 1916 only - May 14 23:00 1:00 S
-Rule Denmark 1916 only - Sep 30 23:00 0 -
-Rule Denmark 1940 only - May 15 0:00 1:00 S
-Rule Denmark 1945 only - Apr 2 2:00s 1:00 S
-Rule Denmark 1945 only - Aug 15 2:00s 0 -
-Rule Denmark 1946 only - May 1 2:00s 1:00 S
-Rule Denmark 1946 only - Sep 1 2:00s 0 -
-Rule Denmark 1947 only - May 4 2:00s 1:00 S
-Rule Denmark 1947 only - Aug 10 2:00s 0 -
-Rule Denmark 1948 only - May 9 2:00s 1:00 S
-Rule Denmark 1948 only - Aug 8 2:00s 0 -
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Copenhagen 0:50:20 - LMT 1890
- 0:50:20 - CMT 1894 Jan 1 # Copenhagen MT
- 1:00 Denmark CE%sT 1942 Nov 2 2:00s
- 1:00 C-Eur CE%sT 1945 Apr 2 2:00
- 1:00 Denmark CE%sT 1980
- 1:00 EU CE%sT
-Zone Atlantic/Faroe -0:27:04 - LMT 1908 Jan 11 # Torshavn
- 0:00 - WET 1981
- 0:00 EU WE%sT
-#
-# From Paul Eggert (2004-10-31):
-# During World War II, Germany maintained secret manned weather stations in
-# East Greenland and Franz Josef Land, but we don't know their time zones.
-# My source for this is Wilhelm Dege's book mentioned under Svalbard.
-#
-# From Paul Eggert (2006-03-22):
-# Greenland joined the EU as part of Denmark, obtained home rule on 1979-05-01,
-# and left the EU on 1985-02-01. It therefore should have been using EU
-# rules at least through 1984. Shanks & Pottenger say Scoresbysund and Godthab
-# used C-Eur rules after 1980, but IATA SSIM (1991/1996) says they use EU
-# rules since at least 1991. Assume EU rules since 1980.
-
-# From Gwillin Law (2001-06-06), citing
-# <http://www.statkart.no/efs/efshefter/2001/efs5-2001.pdf> (2001-03-15),
-# and with translations corrected by Steffen Thorsen:
-#
-# Greenland has four local times, and the relation to UTC
-# is according to the following time line:
-#
-# The military zone near Thule UTC-4
-# Standard Greenland time UTC-3
-# Scoresbysund UTC-1
-# Danmarkshavn UTC
-#
-# In the military area near Thule and in Danmarkshavn DST will not be
-# introduced.
-
-# From Rives McDow (2001-11-01):
-#
-# I correspond regularly with the Dansk Polarcenter, and wrote them at
-# the time to clarify the situation in Thule. Unfortunately, I have
-# not heard back from them regarding my recent letter. [But I have
-# info from earlier correspondence.]
-#
-# According to the center, a very small local time zone around Thule
-# Air Base keeps the time according to UTC-4, implementing daylight
-# savings using North America rules, changing the time at 02:00 local time....
-#
-# The east coast of Greenland north of the community of Scoresbysund
-# uses UTC in the same way as in Iceland, year round, with no dst.
-# There are just a few stations on this coast, including the
-# Danmarkshavn ICAO weather station mentioned in your September 29th
-# email. The other stations are two sledge patrol stations in
-# Mestersvig and Daneborg, the air force base at Station Nord, and the
-# DPC research station at Zackenberg.
-#
-# Scoresbysund and two small villages nearby keep time UTC-1 and use
-# the same daylight savings time period as in West Greenland (Godthab).
-#
-# The rest of Greenland, including Godthab (this area, although it
-# includes central Greenland, is known as west Greenland), keeps time
-# UTC-3, with daylight savings methods according to European rules.
-#
-# It is common procedure to use UTC 0 in the wilderness of East and
-# North Greenland, because it is mainly Icelandic aircraft operators
-# maintaining traffic in these areas. However, the official status of
-# this area is that it sticks with Godthab time. This area might be
-# considered a dual time zone in some respects because of this.
-
-# From Rives McDow (2001-11-19):
-# I heard back from someone stationed at Thule; the time change took place
-# there at 2:00 AM.
-
-# From Paul Eggert (2006-03-22):
-# From 1997 on the CIA map shows Danmarkshavn on GMT;
-# the 1995 map as like Godthab.
-# For lack of better info, assume they were like Godthab before 1996.
-# startkart.no says Thule does not observe DST, but this is clearly an error,
-# so go with Shanks & Pottenger for Thule transitions until this year.
-# For 2007 on assume Thule will stay in sync with US DST rules.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Thule 1991 1992 - Mar lastSun 2:00 1:00 D
-Rule Thule 1991 1992 - Sep lastSun 2:00 0 S
-Rule Thule 1993 2006 - Apr Sun>=1 2:00 1:00 D
-Rule Thule 1993 2006 - Oct lastSun 2:00 0 S
-Rule Thule 2007 max - Mar Sun>=8 2:00 1:00 D
-Rule Thule 2007 max - Nov Sun>=1 2:00 0 S
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Danmarkshavn -1:14:40 - LMT 1916 Jul 28
- -3:00 - WGT 1980 Apr 6 2:00
- -3:00 EU WG%sT 1996
- 0:00 - GMT
-Zone America/Scoresbysund -1:27:52 - LMT 1916 Jul 28 # Ittoqqortoormiit
- -2:00 - CGT 1980 Apr 6 2:00
- -2:00 C-Eur CG%sT 1981 Mar 29
- -1:00 EU EG%sT
-Zone America/Godthab -3:26:56 - LMT 1916 Jul 28 # Nuuk
- -3:00 - WGT 1980 Apr 6 2:00
- -3:00 EU WG%sT
-Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pituffik air base
- -4:00 Thule A%sT
-
-# Estonia
-# From Peter Ilieve (1994-10-15):
-# A relative in Tallinn confirms the accuracy of the data for 1989 onwards
-# [through 1994] and gives the legal authority for it,
-# a regulation of the Government of Estonia, No. 111 of 1989....
-#
-# From Peter Ilieve (1996-10-28):
-# [IATA SSIM (1992/1996) claims that the Baltic republics switch at 01:00s,
-# but a relative confirms that Estonia still switches at 02:00s, writing:]
-# ``I do not [know] exactly but there are some little different
-# (confusing) rules for International Air and Railway Transport Schedules
-# conversion in Sunday connected with end of summer time in Estonia....
-# A discussion is running about the summer time efficiency and effect on
-# human physiology. It seems that Estonia maybe will not change to
-# summer time next spring.''
-
-# From Peter Ilieve (1998-11-04), heavily edited:
-# <a href="http://trip.rk.ee/cgi-bin/thw?${BASE}=akt&${OOHTML}=rtd&TA=1998&TO=1&AN=1390">
-# The 1998-09-22 Estonian time law
-# </a>
-# refers to the Eighth Directive and cites the association agreement between
-# the EU and Estonia, ratified by the Estonian law (RT II 1995, 22--27, 120).
-#
-# I also asked [my relative] whether they use any standard abbreviation
-# for their standard and summer times. He says no, they use "suveaeg"
-# (summer time) and "talveaeg" (winter time).
-
-# From <a href="http://www.baltictimes.com/">The Baltic Times</a> (1999-09-09)
-# via Steffen Thorsen:
-# This year will mark the last time Estonia shifts to summer time,
-# a council of the ruling coalition announced Sept. 6....
-# But what this could mean for Estonia's chances of joining the European
-# Union are still unclear. In 1994, the EU declared summer time compulsory
-# for all member states until 2001. Brussels has yet to decide what to do
-# after that.
-
-# From Mart Oruaas (2000-01-29):
-# Regulation no. 301 (1999-10-12) obsoletes previous regulation
-# no. 206 (1998-09-22) and thus sticks Estonia to +02:00 GMT for all
-# the year round. The regulation is effective 1999-11-01.
-
-# From Toomas Soome (2002-02-21):
-# The Estonian government has changed once again timezone politics.
-# Now we are using again EU rules.
-#
-# From Urmet Jaanes (2002-03-28):
-# The legislative reference is Government decree No. 84 on 2002-02-21.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Tallinn 1:39:00 - LMT 1880
- 1:39:00 - TMT 1918 Feb # Tallinn Mean Time
- 1:00 C-Eur CE%sT 1919 Jul
- 1:39:00 - TMT 1921 May
- 2:00 - EET 1940 Aug 6
- 3:00 - MSK 1941 Sep 15
- 1:00 C-Eur CE%sT 1944 Sep 22
- 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
- 2:00 1:00 EEST 1989 Sep 24 2:00s
- 2:00 C-Eur EE%sT 1998 Sep 22
- 2:00 EU EE%sT 1999 Nov 1
- 2:00 - EET 2002 Feb 21
- 2:00 EU EE%sT
-
-# Finland
-#
-# From Hannu Strang (1994-09-25 06:03:37 UTC):
-# Well, here in Helsinki we're just changing from summer time to regular one,
-# and it's supposed to change at 4am...
-#
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say Finland has switched at 02:00 standard time
-# since 1981. Go with Strang instead.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Finland 1942 only - Apr 3 0:00 1:00 S
-Rule Finland 1942 only - Oct 3 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Helsinki 1:39:52 - LMT 1878 May 31
- 1:39:52 - HMT 1921 May # Helsinki Mean Time
- 2:00 Finland EE%sT 1981 Mar 29 2:00
- 2:00 EU EE%sT
-
-# Aaland Is
-Link Europe/Helsinki Europe/Mariehamn
-
-
-# France
-
-# From Ciro Discepolo (2000-12-20):
-#
-# Henri Le Corre, Regimes Horaires pour le monde entier, Editions
-# Traditionnelles - Paris 2 books, 1993
-#
-# Gabriel, Traite de l'heure dans le monde, Guy Tredaniel editeur,
-# Paris, 1991
-#
-# Francoise Gauquelin, Problemes de l'heure resolus en astrologie,
-# Guy tredaniel, Paris 1987
-
-
-#
-# Shank & Pottenger seem to use `24:00' ambiguously; resolve it with Whitman.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule France 1916 only - Jun 14 23:00s 1:00 S
-Rule France 1916 1919 - Oct Sun>=1 23:00s 0 -
-Rule France 1917 only - Mar 24 23:00s 1:00 S
-Rule France 1918 only - Mar 9 23:00s 1:00 S
-Rule France 1919 only - Mar 1 23:00s 1:00 S
-Rule France 1920 only - Feb 14 23:00s 1:00 S
-Rule France 1920 only - Oct 23 23:00s 0 -
-Rule France 1921 only - Mar 14 23:00s 1:00 S
-Rule France 1921 only - Oct 25 23:00s 0 -
-Rule France 1922 only - Mar 25 23:00s 1:00 S
-# DSH writes that a law of 1923-05-24 specified 3rd Sat in Apr at 23:00 to 1st
-# Sat in Oct at 24:00; and that in 1930, because of Easter, the transitions
-# were Apr 12 and Oct 5. Go with Shanks & Pottenger.
-Rule France 1922 1938 - Oct Sat>=1 23:00s 0 -
-Rule France 1923 only - May 26 23:00s 1:00 S
-Rule France 1924 only - Mar 29 23:00s 1:00 S
-Rule France 1925 only - Apr 4 23:00s 1:00 S
-Rule France 1926 only - Apr 17 23:00s 1:00 S
-Rule France 1927 only - Apr 9 23:00s 1:00 S
-Rule France 1928 only - Apr 14 23:00s 1:00 S
-Rule France 1929 only - Apr 20 23:00s 1:00 S
-Rule France 1930 only - Apr 12 23:00s 1:00 S
-Rule France 1931 only - Apr 18 23:00s 1:00 S
-Rule France 1932 only - Apr 2 23:00s 1:00 S
-Rule France 1933 only - Mar 25 23:00s 1:00 S
-Rule France 1934 only - Apr 7 23:00s 1:00 S
-Rule France 1935 only - Mar 30 23:00s 1:00 S
-Rule France 1936 only - Apr 18 23:00s 1:00 S
-Rule France 1937 only - Apr 3 23:00s 1:00 S
-Rule France 1938 only - Mar 26 23:00s 1:00 S
-Rule France 1939 only - Apr 15 23:00s 1:00 S
-Rule France 1939 only - Nov 18 23:00s 0 -
-Rule France 1940 only - Feb 25 2:00 1:00 S
-# The French rules for 1941-1944 were not used in Paris, but Shanks & Pottenger
-# write that they were used in Monaco and in many French locations.
-# Le Corre writes that the upper limit of the free zone was Arneguy, Orthez,
-# Mont-de-Marsan, Bazas, Langon, Lamotte-Montravel, Marouil, La
-# Rochefoucault, Champagne-Mouton, La Roche-Posay, La Haye-Decartes,
-# Loches, Montrichard, Vierzon, Bourges, Moulins, Digoin,
-# Paray-le-Monial, Montceau-les-Mines, Chalons-sur-Saone, Arbois,
-# Dole, Morez, St-Claude, and Collognes (Haute-Savioe).
-Rule France 1941 only - May 5 0:00 2:00 M # Midsummer
-# Shanks & Pottenger say this transition occurred at Oct 6 1:00,
-# but go with Denis Excoffier (1997-12-12),
-# who quotes the Ephemerides Astronomiques for 1998 from Bureau des Longitudes
-# as saying 5/10/41 22hUT.
-Rule France 1941 only - Oct 6 0:00 1:00 S
-Rule France 1942 only - Mar 9 0:00 2:00 M
-Rule France 1942 only - Nov 2 3:00 1:00 S
-Rule France 1943 only - Mar 29 2:00 2:00 M
-Rule France 1943 only - Oct 4 3:00 1:00 S
-Rule France 1944 only - Apr 3 2:00 2:00 M
-Rule France 1944 only - Oct 8 1:00 1:00 S
-Rule France 1945 only - Apr 2 2:00 2:00 M
-Rule France 1945 only - Sep 16 3:00 0 -
-# Shanks & Pottenger give Mar 28 2:00 and Sep 26 3:00;
-# go with Excoffier's 28/3/76 0hUT and 25/9/76 23hUT.
-Rule France 1976 only - Mar 28 1:00 1:00 S
-Rule France 1976 only - Sep 26 1:00 0 -
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time, and Whitman 0:09:05,
-# but Howse quotes the actual French legislation as saying 0:09:21.
-# Go with Howse. Howse writes that the time in France was officially based
-# on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
- 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT
-# Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre.
- 0:00 France WE%sT 1940 Jun 14 23:00
-# Le Corre says Paris stuck with occupied-France time after the liberation;
-# go with Shanks & Pottenger.
- 1:00 C-Eur CE%sT 1944 Aug 25
- 0:00 France WE%sT 1945 Sep 16 3:00
- 1:00 France CE%sT 1977
- 1:00 EU CE%sT
-
-# Germany
-
-# From Markus Kuhn (1998-09-29):
-# The German time zone web site by the Physikalisch-Technische
-# Bundesanstalt contains DST information back to 1916.
-# [See tz-link.htm for the URL.]
-
-# From Joerg Schilling (2002-10-23):
-# In 1945, Berlin was switched to Moscow Summer time (GMT+4) by
-# <a href="http://www.dhm.de/lemo/html/biografien/BersarinNikolai/">
-# General [Nikolai] Bersarin</a>.
-
-# From Paul Eggert (2003-03-08):
-# <a href="http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf">
-# http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf
-# </a>
-# says that Bersarin issued an order to use Moscow time on May 20.
-# However, Moscow did not observe daylight saving in 1945, so
-# this was equivalent to CEMT (GMT+3), not GMT+4.
-
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Germany 1946 only - Apr 14 2:00s 1:00 S
-Rule Germany 1946 only - Oct 7 2:00s 0 -
-Rule Germany 1947 1949 - Oct Sun>=1 2:00s 0 -
-# http://www.ptb.de/de/org/4/44/441/salt.htm says the following transition
-# occurred at 3:00 MEZ, not the 2:00 MEZ given in Shanks & Pottenger.
-# Go with the PTB.
-Rule Germany 1947 only - Apr 6 3:00s 1:00 S
-Rule Germany 1947 only - May 11 2:00s 2:00 M
-Rule Germany 1947 only - Jun 29 3:00 1:00 S
-Rule Germany 1948 only - Apr 18 2:00s 1:00 S
-Rule Germany 1949 only - Apr 10 2:00s 1:00 S
-
-Rule SovietZone 1945 only - May 24 2:00 2:00 M # Midsummer
-Rule SovietZone 1945 only - Sep 24 3:00 1:00 S
-Rule SovietZone 1945 only - Nov 18 2:00s 0 -
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Berlin 0:53:28 - LMT 1893 Apr
- 1:00 C-Eur CE%sT 1945 May 24 2:00
- 1:00 SovietZone CE%sT 1946
- 1:00 Germany CE%sT 1980
- 1:00 EU CE%sT
-
-# Georgia
-# Please see the "asia" file for Asia/Tbilisi.
-# Herodotus (Histories, IV.45) says Georgia north of the Phasis (now Rioni)
-# is in Europe. Our reference location Tbilisi is in the Asian part.
-
-# Gibraltar
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2 0:00s
- 0:00 GB-Eire %s 1957 Apr 14 2:00
- 1:00 - CET 1982
- 1:00 EU CE%sT
-
-# Greece
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# Whitman gives 1932 Jul 5 - Nov 1; go with Shanks & Pottenger.
-Rule Greece 1932 only - Jul 7 0:00 1:00 S
-Rule Greece 1932 only - Sep 1 0:00 0 -
-# Whitman gives 1941 Apr 25 - ?; go with Shanks & Pottenger.
-Rule Greece 1941 only - Apr 7 0:00 1:00 S
-# Whitman gives 1942 Feb 2 - ?; go with Shanks & Pottenger.
-Rule Greece 1942 only - Nov 2 3:00 0 -
-Rule Greece 1943 only - Mar 30 0:00 1:00 S
-Rule Greece 1943 only - Oct 4 0:00 0 -
-# Whitman gives 1944 Oct 3 - Oct 31; go with Shanks & Pottenger.
-Rule Greece 1952 only - Jul 1 0:00 1:00 S
-Rule Greece 1952 only - Nov 2 0:00 0 -
-Rule Greece 1975 only - Apr 12 0:00s 1:00 S
-Rule Greece 1975 only - Nov 26 0:00s 0 -
-Rule Greece 1976 only - Apr 11 2:00s 1:00 S
-Rule Greece 1976 only - Oct 10 2:00s 0 -
-Rule Greece 1977 1978 - Apr Sun>=1 2:00s 1:00 S
-Rule Greece 1977 only - Sep 26 2:00s 0 -
-Rule Greece 1978 only - Sep 24 4:00 0 -
-Rule Greece 1979 only - Apr 1 9:00 1:00 S
-Rule Greece 1979 only - Sep 29 2:00 0 -
-Rule Greece 1980 only - Apr 1 0:00 1:00 S
-Rule Greece 1980 only - Sep 28 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Athens 1:34:52 - LMT 1895 Sep 14
- 1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT
- 2:00 Greece EE%sT 1941 Apr 30
- 1:00 Greece CE%sT 1944 Apr 4
- 2:00 Greece EE%sT 1981
- # Shanks & Pottenger say it switched to C-Eur in 1981;
- # go with EU instead, since Greece joined it on Jan 1.
- 2:00 EU EE%sT
-
-# Hungary
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Hungary 1918 only - Apr 1 3:00 1:00 S
-Rule Hungary 1918 only - Sep 29 3:00 0 -
-Rule Hungary 1919 only - Apr 15 3:00 1:00 S
-Rule Hungary 1919 only - Sep 15 3:00 0 -
-Rule Hungary 1920 only - Apr 5 3:00 1:00 S
-Rule Hungary 1920 only - Sep 30 3:00 0 -
-Rule Hungary 1945 only - May 1 23:00 1:00 S
-Rule Hungary 1945 only - Nov 3 0:00 0 -
-Rule Hungary 1946 only - Mar 31 2:00s 1:00 S
-Rule Hungary 1946 1949 - Oct Sun>=1 2:00s 0 -
-Rule Hungary 1947 1949 - Apr Sun>=4 2:00s 1:00 S
-Rule Hungary 1950 only - Apr 17 2:00s 1:00 S
-Rule Hungary 1950 only - Oct 23 2:00s 0 -
-Rule Hungary 1954 1955 - May 23 0:00 1:00 S
-Rule Hungary 1954 1955 - Oct 3 0:00 0 -
-Rule Hungary 1956 only - Jun Sun>=1 0:00 1:00 S
-Rule Hungary 1956 only - Sep lastSun 0:00 0 -
-Rule Hungary 1957 only - Jun Sun>=1 1:00 1:00 S
-Rule Hungary 1957 only - Sep lastSun 3:00 0 -
-Rule Hungary 1980 only - Apr 6 1:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Budapest 1:16:20 - LMT 1890 Oct
- 1:00 C-Eur CE%sT 1918
- 1:00 Hungary CE%sT 1941 Apr 6 2:00
- 1:00 C-Eur CE%sT 1945
- 1:00 Hungary CE%sT 1980 Sep 28 2:00s
- 1:00 EU CE%sT
-
-# Iceland
-#
-# From Adam David (1993-11-06):
-# The name of the timezone in Iceland for system / mail / news purposes is GMT.
-#
-# (1993-12-05):
-# This material is paraphrased from the 1988 edition of the University of
-# Iceland Almanak.
-#
-# From January 1st, 1908 the whole of Iceland was standardised at 1 hour
-# behind GMT. Previously, local mean solar time was used in different parts
-# of Iceland, the almanak had been based on Reykjavik mean solar time which
-# was 1 hour and 28 minutes behind GMT.
-#
-# "first day of winter" referred to [below] means the first day of the 26 weeks
-# of winter, according to the old icelandic calendar that dates back to the
-# time the norsemen first settled Iceland. The first day of winter is always
-# Saturday, but is not dependent on the Julian or Gregorian calendars.
-#
-# (1993-12-10):
-# I have a reference from the Oxford Icelandic-English dictionary for the
-# beginning of winter, which ties it to the ecclesiastical calendar (and thus
-# to the julian/gregorian calendar) over the period in question.
-# the winter begins on the Saturday next before St. Luke's day
-# (old style), or on St. Luke's day, if a Saturday.
-# St. Luke's day ought to be traceable from ecclesiastical sources. "old style"
-# might be a reference to the Julian calendar as opposed to Gregorian, or it
-# might mean something else (???).
-#
-# From Paul Eggert (2006-03-22):
-# The Iceland Almanak, Shanks & Pottenger, and Whitman disagree on many points.
-# We go with the Almanak, except for one claim from Shanks & Pottenger, namely
-# that Reykavik was 21W57 from 1837 to 1908, local mean time before that.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Iceland 1917 1918 - Feb 19 23:00 1:00 S
-Rule Iceland 1917 only - Oct 21 1:00 0 -
-Rule Iceland 1918 only - Nov 16 1:00 0 -
-Rule Iceland 1939 only - Apr 29 23:00 1:00 S
-Rule Iceland 1939 only - Nov 29 2:00 0 -
-Rule Iceland 1940 only - Feb 25 2:00 1:00 S
-Rule Iceland 1940 only - Nov 3 2:00 0 -
-Rule Iceland 1941 only - Mar 2 1:00s 1:00 S
-Rule Iceland 1941 only - Nov 2 1:00s 0 -
-Rule Iceland 1942 only - Mar 8 1:00s 1:00 S
-Rule Iceland 1942 only - Oct 25 1:00s 0 -
-# 1943-1946 - first Sunday in March until first Sunday in winter
-Rule Iceland 1943 1946 - Mar Sun>=1 1:00s 1:00 S
-Rule Iceland 1943 1948 - Oct Sun>=22 1:00s 0 -
-# 1947-1967 - first Sunday in April until first Sunday in winter
-Rule Iceland 1947 1967 - Apr Sun>=1 1:00s 1:00 S
-# 1949 Oct transition delayed by 1 week
-Rule Iceland 1949 only - Oct 30 1:00s 0 -
-Rule Iceland 1950 1966 - Oct Sun>=22 1:00s 0 -
-Rule Iceland 1967 only - Oct 29 1:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Atlantic/Reykjavik -1:27:24 - LMT 1837
- -1:27:48 - RMT 1908 # Reykjavik Mean Time?
- -1:00 Iceland IS%sT 1968 Apr 7 1:00s
- 0:00 - GMT
-
-# Italy
-#
-# From Paul Eggert (2001-03-06):
-# Sicily and Sardinia each had their own time zones from 1866 to 1893,
-# called Palermo Time (+00:53:28) and Cagliari Time (+00:36:32).
-# During World War II, German-controlled Italy used German time.
-# But these events all occurred before the 1970 cutoff,
-# so record only the time in Rome.
-#
-# From Paul Eggert (2006-03-22):
-# For Italian DST we have three sources: Shanks & Pottenger, Whitman, and
-# F. Pollastri
-# <a href="http://toi.iriti.cnr.it/uk/ienitlt.html">
-# Day-light Saving Time in Italy (2006-02-03)
-# </a>
-# (`FP' below), taken from an Italian National Electrotechnical Institute
-# publication. When the three sources disagree, guess who's right, as follows:
-#
-# year FP Shanks&P. (S) Whitman (W) Go with:
-# 1916 06-03 06-03 24:00 06-03 00:00 FP & W
-# 09-30 09-30 24:00 09-30 01:00 FP; guess 24:00s
-# 1917 04-01 03-31 24:00 03-31 00:00 FP & S
-# 09-30 09-29 24:00 09-30 01:00 FP & W
-# 1918 03-09 03-09 24:00 03-09 00:00 FP & S
-# 10-06 10-05 24:00 10-06 01:00 FP & W
-# 1919 03-01 03-01 24:00 03-01 00:00 FP & S
-# 10-04 10-04 24:00 10-04 01:00 FP; guess 24:00s
-# 1920 03-20 03-20 24:00 03-20 00:00 FP & S
-# 09-18 09-18 24:00 10-01 01:00 FP; guess 24:00s
-# 1944 04-02 04-03 02:00 S (see C-Eur)
-# 09-16 10-02 03:00 FP; guess 24:00s
-# 1945 09-14 09-16 24:00 FP; guess 24:00s
-# 1970 05-21 05-31 00:00 S
-# 09-20 09-27 00:00 S
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Italy 1916 only - Jun 3 0:00s 1:00 S
-Rule Italy 1916 only - Oct 1 0:00s 0 -
-Rule Italy 1917 only - Apr 1 0:00s 1:00 S
-Rule Italy 1917 only - Sep 30 0:00s 0 -
-Rule Italy 1918 only - Mar 10 0:00s 1:00 S
-Rule Italy 1918 1919 - Oct Sun>=1 0:00s 0 -
-Rule Italy 1919 only - Mar 2 0:00s 1:00 S
-Rule Italy 1920 only - Mar 21 0:00s 1:00 S
-Rule Italy 1920 only - Sep 19 0:00s 0 -
-Rule Italy 1940 only - Jun 15 0:00s 1:00 S
-Rule Italy 1944 only - Sep 17 0:00s 0 -
-Rule Italy 1945 only - Apr 2 2:00 1:00 S
-Rule Italy 1945 only - Sep 15 0:00s 0 -
-Rule Italy 1946 only - Mar 17 2:00s 1:00 S
-Rule Italy 1946 only - Oct 6 2:00s 0 -
-Rule Italy 1947 only - Mar 16 0:00s 1:00 S
-Rule Italy 1947 only - Oct 5 0:00s 0 -
-Rule Italy 1948 only - Feb 29 2:00s 1:00 S
-Rule Italy 1948 only - Oct 3 2:00s 0 -
-Rule Italy 1966 1968 - May Sun>=22 0:00 1:00 S
-Rule Italy 1966 1969 - Sep Sun>=22 0:00 0 -
-Rule Italy 1969 only - Jun 1 0:00 1:00 S
-Rule Italy 1970 only - May 31 0:00 1:00 S
-Rule Italy 1970 only - Sep lastSun 0:00 0 -
-Rule Italy 1971 1972 - May Sun>=22 0:00 1:00 S
-Rule Italy 1971 only - Sep lastSun 1:00 0 -
-Rule Italy 1972 only - Oct 1 0:00 0 -
-Rule Italy 1973 only - Jun 3 0:00 1:00 S
-Rule Italy 1973 1974 - Sep lastSun 0:00 0 -
-Rule Italy 1974 only - May 26 0:00 1:00 S
-Rule Italy 1975 only - Jun 1 0:00s 1:00 S
-Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
-Rule Italy 1976 only - May 30 0:00s 1:00 S
-Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
-Rule Italy 1978 only - Oct 1 0:00s 0 -
-Rule Italy 1979 only - Sep 30 0:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Rome 0:49:56 - LMT 1866 Sep 22
- 0:49:56 - RMT 1893 Nov 1 0:00s # Rome Mean
- 1:00 Italy CE%sT 1942 Nov 2 2:00s
- 1:00 C-Eur CE%sT 1944 Jul
- 1:00 Italy CE%sT 1980
- 1:00 EU CE%sT
-
-Link Europe/Rome Europe/Vatican
-Link Europe/Rome Europe/San_Marino
-
-# Latvia
-
-# From Liene Kanepe (1998-09-17):
-
-# I asked about this matter Scientific Secretary of the Institute of Astronomy
-# of The University of Latvia Dr. paed Mr. Ilgonis Vilks. I also searched the
-# correct data in juridical acts and I found some juridical documents about
-# changes in the counting of time in Latvia from 1981....
-#
-# Act No.35 of the Council of Ministers of Latvian SSR of 1981-01-22 ...
-# according to the Act No.925 of the Council of Ministers of USSR of 1980-10-24
-# ...: all year round the time of 2nd time zone + 1 hour, in addition turning
-# the hands of the clock 1 hour forward on 1 April at 00:00 (GMT 31 March 21:00)
-# and 1 hour backward on the 1 October at 00:00 (GMT 30 September 20:00).
-#
-# Act No.592 of the Council of Ministers of Latvian SSR of 1984-09-24 ...
-# according to the Act No.967 of the Council of Ministers of USSR of 1984-09-13
-# ...: all year round the time of 2nd time zone + 1 hour, in addition turning
-# the hands of the clock 1 hour forward on the last Sunday of March at 02:00
-# (GMT 23:00 on the previous day) and 1 hour backward on the last Sunday of
-# September at 03:00 (GMT 23:00 on the previous day).
-#
-# Act No.81 of the Council of Ministers of Latvian SSR of 1989-03-22 ...
-# according to the Act No.227 of the Council of Ministers of USSR of 1989-03-14
-# ...: since the last Sunday of March 1989 in Lithuanian SSR, Latvian SSR,
-# Estonian SSR and Kaliningrad region of Russian Federation all year round the
-# time of 2nd time zone (Moscow time minus one hour). On the territory of Latvia
-# transition to summer time is performed on the last Sunday of March at 02:00
-# (GMT 00:00), turning the hands of the clock 1 hour forward. The end of
-# daylight saving time is performed on the last Sunday of September at 03:00
-# (GMT 00:00), turning the hands of the clock 1 hour backward. Exception is
-# 1989-03-26, when we must not turn the hands of the clock....
-#
-# The Regulations of the Cabinet of Ministers of the Republic of Latvia of
-# 1997-01-21 on transition to Summer time ... established the same order of
-# daylight savings time settings as in the States of the European Union.
-
-# From Andrei Ivanov (2000-03-06):
-# This year Latvia will not switch to Daylight Savings Time (as specified in
-# <a href="http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm">
-# The Regulations of the Cabinet of Ministers of the Rep. of Latvia of
-# 29-Feb-2000 (#79)</a>, in Latvian for subscribers only).
-
-# <a href="http://www.rferl.org/newsline/2001/01/3-CEE/cee-030101.html">
-# From RFE/RL Newsline (2001-01-03), noted after a heads-up by Rives McDow:
-# </a>
-# The Latvian government on 2 January decided that the country will
-# institute daylight-saving time this spring, LETA reported.
-# Last February the three Baltic states decided not to turn back their
-# clocks one hour in the spring....
-# Minister of Economy Aigars Kalvitis noted that Latvia had too few
-# daylight hours and thus decided to comply with a draft European
-# Commission directive that provides for instituting daylight-saving
-# time in EU countries between 2002 and 2006. The Latvian government
-# urged Lithuania and Estonia to adopt a similar time policy, but it
-# appears that they will not do so....
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Latvia 1989 1996 - Mar lastSun 2:00s 1:00 S
-Rule Latvia 1989 1996 - Sep lastSun 2:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Riga 1:36:24 - LMT 1880
- 1:36:24 - RMT 1918 Apr 15 2:00 #Riga Mean Time
- 1:36:24 1:00 LST 1918 Sep 16 3:00 #Latvian Summer
- 1:36:24 - RMT 1919 Apr 1 2:00
- 1:36:24 1:00 LST 1919 May 22 3:00
- 1:36:24 - RMT 1926 May 11
- 2:00 - EET 1940 Aug 5
- 3:00 - MSK 1941 Jul
- 1:00 C-Eur CE%sT 1944 Oct 13
- 3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s
- 2:00 1:00 EEST 1989 Sep lastSun 2:00s
- 2:00 Latvia EE%sT 1997 Jan 21
- 2:00 EU EE%sT 2000 Feb 29
- 2:00 - EET 2001 Jan 2
- 2:00 EU EE%sT
-
-# Liechtenstein
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Vaduz 0:38:04 - LMT 1894 Jun
- 1:00 - CET 1981
- 1:00 EU CE%sT
-
-# Lithuania
-
-# From Paul Eggert (1996-11-22):
-# IATA SSIM (1992/1996) says Lithuania uses W-Eur rules, but since it is
-# known to be wrong about Estonia and Latvia, assume it's wrong here too.
-
-# From Marius Gedminas (1998-08-07):
-# I would like to inform that in this year Lithuanian time zone
-# (Europe/Vilnius) was changed.
-
-# From <a href="http://www.elta.lt/">ELTA</a> No. 972 (2582) (1999-09-29),
-# via Steffen Thorsen:
-# Lithuania has shifted back to the second time zone (GMT plus two hours)
-# to be valid here starting from October 31,
-# as decided by the national government on Wednesday....
-# The Lithuanian government also announced plans to consider a
-# motion to give up shifting to summer time in spring, as it was
-# already done by Estonia.
-
-# From the <a href="http://www.tourism.lt/informa/ff.htm">
-# Fact File, Lithuanian State Department of Tourism
-# </a> (2000-03-27): Local time is GMT+2 hours ..., no daylight saving.
-
-# From a user via Klaus Marten (2003-02-07):
-# As a candidate for membership of the European Union, Lithuania will
-# observe Summer Time in 2003, changing its clocks at the times laid
-# down in EU Directive 2000/84 of 19.I.01 (i.e. at the same times as its
-# neighbour Latvia). The text of the Lithuanian government Order of
-# 7.XI.02 to this effect can be found at
-# http://www.lrvk.lt/nut/11/n1749.htm
-
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Vilnius 1:41:16 - LMT 1880
- 1:24:00 - WMT 1917 # Warsaw Mean Time
- 1:35:36 - KMT 1919 Oct 10 # Kaunas Mean Time
- 1:00 - CET 1920 Jul 12
- 2:00 - EET 1920 Oct 9
- 1:00 - CET 1940 Aug 3
- 3:00 - MSK 1941 Jun 24
- 1:00 C-Eur CE%sT 1944 Aug
- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
- 2:00 1:00 EEST 1991 Sep 29 2:00s
- 2:00 C-Eur EE%sT 1998
- 2:00 - EET 1998 Mar 29 1:00u
- 1:00 EU CE%sT 1999 Oct 31 1:00u
- 2:00 - EET 2003 Jan 1
- 2:00 EU EE%sT
-
-# Luxembourg
-# Whitman disagrees with most of these dates in minor ways;
-# go with Shanks & Pottenger.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Lux 1916 only - May 14 23:00 1:00 S
-Rule Lux 1916 only - Oct 1 1:00 0 -
-Rule Lux 1917 only - Apr 28 23:00 1:00 S
-Rule Lux 1917 only - Sep 17 1:00 0 -
-Rule Lux 1918 only - Apr Mon>=15 2:00s 1:00 S
-Rule Lux 1918 only - Sep Mon>=15 2:00s 0 -
-Rule Lux 1919 only - Mar 1 23:00 1:00 S
-Rule Lux 1919 only - Oct 5 3:00 0 -
-Rule Lux 1920 only - Feb 14 23:00 1:00 S
-Rule Lux 1920 only - Oct 24 2:00 0 -
-Rule Lux 1921 only - Mar 14 23:00 1:00 S
-Rule Lux 1921 only - Oct 26 2:00 0 -
-Rule Lux 1922 only - Mar 25 23:00 1:00 S
-Rule Lux 1922 only - Oct Sun>=2 1:00 0 -
-Rule Lux 1923 only - Apr 21 23:00 1:00 S
-Rule Lux 1923 only - Oct Sun>=2 2:00 0 -
-Rule Lux 1924 only - Mar 29 23:00 1:00 S
-Rule Lux 1924 1928 - Oct Sun>=2 1:00 0 -
-Rule Lux 1925 only - Apr 5 23:00 1:00 S
-Rule Lux 1926 only - Apr 17 23:00 1:00 S
-Rule Lux 1927 only - Apr 9 23:00 1:00 S
-Rule Lux 1928 only - Apr 14 23:00 1:00 S
-Rule Lux 1929 only - Apr 20 23:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Luxembourg 0:24:36 - LMT 1904 Jun
- 1:00 Lux CE%sT 1918 Nov 25
- 0:00 Lux WE%sT 1929 Oct 6 2:00s
- 0:00 Belgium WE%sT 1940 May 14 3:00
- 1:00 C-Eur WE%sT 1944 Sep 18 3:00
- 1:00 Belgium CE%sT 1977
- 1:00 EU CE%sT
-
-# Macedonia
-# see Serbia
-
-# Malta
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Malta 1973 only - Mar 31 0:00s 1:00 S
-Rule Malta 1973 only - Sep 29 0:00s 0 -
-Rule Malta 1974 only - Apr 21 0:00s 1:00 S
-Rule Malta 1974 only - Sep 16 0:00s 0 -
-Rule Malta 1975 1979 - Apr Sun>=15 2:00 1:00 S
-Rule Malta 1975 1980 - Sep Sun>=15 2:00 0 -
-Rule Malta 1980 only - Mar 31 2:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta
- 1:00 Italy CE%sT 1942 Nov 2 2:00s
- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
- 1:00 Italy CE%sT 1973 Mar 31
- 1:00 Malta CE%sT 1981
- 1:00 EU CE%sT
-
-# Moldova
-
-# From Paul Eggert (2006-03-22):
-# A previous version of this database followed Shanks & Pottenger, who write
-# that Tiraspol switched to Moscow time on 1992-01-19 at 02:00.
-# However, this is most likely an error, as Moldova declared independence
-# on 1991-08-27 (the 1992-01-19 date is that of a Russian decree).
-# In early 1992 there was large-scale interethnic violence in the area
-# and it's possible that some Russophones continued to observe Moscow time.
-# But [two people] separately reported via
-# Jesper Norgaard that as of 2001-01-24 Tiraspol was like Chisinau.
-# The Tiraspol entry has therefore been removed for now.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Chisinau 1:55:20 - LMT 1880
- 1:55 - CMT 1918 Feb 15 # Chisinau MT
- 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
- 2:00 Romania EE%sT 1940 Aug 15
- 2:00 1:00 EEST 1941 Jul 17
- 1:00 C-Eur CE%sT 1944 Aug 24
- 3:00 Russia MSK/MSD 1990
- 3:00 - MSK 1990 May 6
- 2:00 - EET 1991
- 2:00 Russia EE%sT 1992
- 2:00 E-Eur EE%sT 1997
-# See Romania commentary for the guessed 1997 transition to EU rules.
- 2:00 EU EE%sT
-
-# Monaco
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
-# more precise 0:09:21.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
- 0:00 France WE%sT 1945 Sep 16 3:00
- 1:00 France CE%sT 1977
- 1:00 EU CE%sT
-
-# Montenegro
-# see Serbia
-
-# Netherlands
-
-# Howse writes that the Netherlands' railways used GMT between 1892 and 1940,
-# but for other purposes the Netherlands used Amsterdam mean time.
-
-# However, Robert H. van Gent writes (2001-04-01):
-# Howse's statement is only correct up to 1909. From 1909-05-01 (00:00:00
-# Amsterdam mean time) onwards, the whole of the Netherlands (including
-# the Dutch railways) was required by law to observe Amsterdam mean time
-# (19 minutes 32.13 seconds ahead of GMT). This had already been the
-# common practice (except for the railways) for many decades but it was
-# not until 1909 when the Dutch government finally defined this by law.
-# On 1937-07-01 this was changed to 20 minutes (exactly) ahead of GMT and
-# was generally known as Dutch Time ("Nederlandse Tijd").
-#
-# (2001-04-08):
-# 1892-05-01 was the date when the Dutch railways were by law required to
-# observe GMT while the remainder of the Netherlands adhered to the common
-# practice of following Amsterdam mean time.
-#
-# (2001-04-09):
-# In 1835 the authorities of the province of North Holland requested the
-# municipal authorities of the towns and cities in the province to observe
-# Amsterdam mean time but I do not know in how many cases this request was
-# actually followed.
-#
-# From 1852 onwards the Dutch telegraph offices were by law required to
-# observe Amsterdam mean time. As the time signals from the observatory of
-# Leiden were also distributed by the telegraph system, I assume that most
-# places linked up with the telegraph (and railway) system automatically
-# adopted Amsterdam mean time.
-#
-# Although the early Dutch railway companies initially observed a variety
-# of times, most of them had adopted Amsterdam mean time by 1858 but it
-# was not until 1866 when they were all required by law to observe
-# Amsterdam mean time.
-
-# The data before 1945 are taken from
-# <http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm>.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Neth 1916 only - May 1 0:00 1:00 NST # Netherlands Summer Time
-Rule Neth 1916 only - Oct 1 0:00 0 AMT # Amsterdam Mean Time
-Rule Neth 1917 only - Apr 16 2:00s 1:00 NST
-Rule Neth 1917 only - Sep 17 2:00s 0 AMT
-Rule Neth 1918 1921 - Apr Mon>=1 2:00s 1:00 NST
-Rule Neth 1918 1921 - Sep lastMon 2:00s 0 AMT
-Rule Neth 1922 only - Mar lastSun 2:00s 1:00 NST
-Rule Neth 1922 1936 - Oct Sun>=2 2:00s 0 AMT
-Rule Neth 1923 only - Jun Fri>=1 2:00s 1:00 NST
-Rule Neth 1924 only - Mar lastSun 2:00s 1:00 NST
-Rule Neth 1925 only - Jun Fri>=1 2:00s 1:00 NST
-# From 1926 through 1939 DST began 05-15, except that it was delayed by a week
-# in years when 05-15 fell in the Pentecost weekend.
-Rule Neth 1926 1931 - May 15 2:00s 1:00 NST
-Rule Neth 1932 only - May 22 2:00s 1:00 NST
-Rule Neth 1933 1936 - May 15 2:00s 1:00 NST
-Rule Neth 1937 only - May 22 2:00s 1:00 NST
-Rule Neth 1937 only - Jul 1 0:00 1:00 S
-Rule Neth 1937 1939 - Oct Sun>=2 2:00s 0 -
-Rule Neth 1938 1939 - May 15 2:00s 1:00 S
-Rule Neth 1945 only - Apr 2 2:00s 1:00 S
-Rule Neth 1945 only - Sep 16 2:00s 0 -
-#
-# Amsterdam Mean Time was +00:19:32.13 exactly, but the .13 is omitted
-# below because the current format requires GMTOFF to be an integer.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Amsterdam 0:19:32 - LMT 1835
- 0:19:32 Neth %s 1937 Jul 1
- 0:20 Neth NE%sT 1940 May 16 0:00 # Dutch Time
- 1:00 C-Eur CE%sT 1945 Apr 2 2:00
- 1:00 Neth CE%sT 1977
- 1:00 EU CE%sT
-
-# Norway
-# http://met.no/met/met_lex/q_u/sommertid.html (2004-01) agrees with Shanks &
-# Pottenger.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Norway 1916 only - May 22 1:00 1:00 S
-Rule Norway 1916 only - Sep 30 0:00 0 -
-Rule Norway 1945 only - Apr 2 2:00s 1:00 S
-Rule Norway 1945 only - Oct 1 2:00s 0 -
-Rule Norway 1959 1964 - Mar Sun>=15 2:00s 1:00 S
-Rule Norway 1959 1965 - Sep Sun>=15 2:00s 0 -
-Rule Norway 1965 only - Apr 25 2:00s 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Oslo 0:43:00 - LMT 1895 Jan 1
- 1:00 Norway CE%sT 1940 Aug 10 23:00
- 1:00 C-Eur CE%sT 1945 Apr 2 2:00
- 1:00 Norway CE%sT 1980
- 1:00 EU CE%sT
-
-# Svalbard & Jan Mayen
-
-# From Steffen Thorsen (2001-05-01):
-# Although I could not find it explicitly, it seems that Jan Mayen and
-# Svalbard have been using the same time as Norway at least since the
-# time they were declared as parts of Norway. Svalbard was declared
-# as a part of Norway by law of 1925-07-17 no 11, section 4 and Jan
-# Mayen by law of 1930-02-27 no 2, section 2. (From
-# http://www.lovdata.no/all/nl-19250717-011.html and
-# http://www.lovdata.no/all/nl-19300227-002.html). The law/regulation
-# for normal/standard time in Norway is from 1894-06-29 no 1 (came
-# into operation on 1895-01-01) and Svalbard/Jan Mayen seem to be a
-# part of this law since 1925/1930. (From
-# http://www.lovdata.no/all/nl-18940629-001.html ) I have not been
-# able to find if Jan Mayen used a different time zone (e.g. -0100)
-# before 1930. Jan Mayen has only been "inhabitated" since 1921 by
-# Norwegian meteorologists and maybe used the same time as Norway ever
-# since 1921. Svalbard (Arctic/Longyearbyen) has been inhabited since
-# before 1895, and therefore probably changed the local time somewhere
-# between 1895 and 1925 (inclusive).
-
-# From Paul Eggert (2001-05-01):
-#
-# Actually, Jan Mayen was never occupied by Germany during World War II,
-# so it must have diverged from Oslo time during the war, as Oslo was
-# keeping Berlin time.
-#
-# <http://home.no.net/janmayen/history.htm> says that the meteorologists
-# burned down their station in 1940 and left the island, but returned in
-# 1941 with a small Norwegian garrison and continued operations despite
-# frequent air ttacks from Germans. In 1943 the Americans established a
-# radiolocating station on the island, called "Atlantic City". Possibly
-# the UTC offset changed during the war, but I think it unlikely that
-# Jan Mayen used German daylight-saving rules.
-#
-# Svalbard is more complicated, as it was raided in August 1941 by an
-# Allied party that evacuated the civilian population to England (says
-# <http://www.bartleby.com/65/sv/Svalbard.html>). The Svalbard FAQ
-# <http://www.svalbard.com/SvalbardFAQ.html> says that the Germans were
-# expelled on 1942-05-14. However, small parties of Germans did return,
-# and according to Wilhelm Dege's book "War North of 80" (1954)
-# <http://www.ucalgary.ca/UofC/departments/UP/1-55238/1-55238-110-2.html>
-# the German armed forces at the Svalbard weather station code-named
-# Haudegen did not surrender to the Allies until September 1945.
-#
-# All these events predate our cutoff date of 1970. Unless we can
-# come up with more definitive info about the timekeeping during the
-# war years it's probably best just do do the following for now:
-Link Europe/Oslo Arctic/Longyearbyen
-
-# Poland
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Poland 1918 1919 - Sep 16 2:00s 0 -
-Rule Poland 1919 only - Apr 15 2:00s 1:00 S
-Rule Poland 1944 only - Apr 3 2:00s 1:00 S
-# Whitman gives 1944 Nov 30; go with Shanks & Pottenger.
-Rule Poland 1944 only - Oct 4 2:00 0 -
-# For 1944-1948 Whitman gives the previous day; go with Shanks & Pottenger.
-Rule Poland 1945 only - Apr 29 0:00 1:00 S
-Rule Poland 1945 only - Nov 1 0:00 0 -
-# For 1946 on the source is Kazimierz Borkowski,
-# Torun Center for Astronomy, Dept. of Radio Astronomy, Nicolaus Copernicus U.,
-# <http://www.astro.uni.torun.pl/~kb/Artykuly/U-PA/Czas2.htm#tth_tAb1>
-# Thanks to Przemyslaw Augustyniak (2005-05-28) for this reference.
-# He also gives these further references:
-# Mon Pol nr 13, poz 162 (1995) <http://www.abc.com.pl/serwis/mp/1995/0162.htm>
-# Druk nr 2180 (2003) <http://www.senat.gov.pl/k5/dok/sejm/053/2180.pdf>
-Rule Poland 1946 only - Apr 14 0:00s 1:00 S
-Rule Poland 1946 only - Oct 7 2:00s 0 -
-Rule Poland 1947 only - May 4 2:00s 1:00 S
-Rule Poland 1947 1949 - Oct Sun>=1 2:00s 0 -
-Rule Poland 1948 only - Apr 18 2:00s 1:00 S
-Rule Poland 1949 only - Apr 10 2:00s 1:00 S
-Rule Poland 1957 only - Jun 2 1:00s 1:00 S
-Rule Poland 1957 1958 - Sep lastSun 1:00s 0 -
-Rule Poland 1958 only - Mar 30 1:00s 1:00 S
-Rule Poland 1959 only - May 31 1:00s 1:00 S
-Rule Poland 1959 1961 - Oct Sun>=1 1:00s 0 -
-Rule Poland 1960 only - Apr 3 1:00s 1:00 S
-Rule Poland 1961 1964 - May lastSun 1:00s 1:00 S
-Rule Poland 1962 1964 - Sep lastSun 1:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Warsaw 1:24:00 - LMT 1880
- 1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time
- 1:00 C-Eur CE%sT 1918 Sep 16 3:00
- 2:00 Poland EE%sT 1922 Jun
- 1:00 Poland CE%sT 1940 Jun 23 2:00
- 1:00 C-Eur CE%sT 1944 Oct
- 1:00 Poland CE%sT 1977
- 1:00 W-Eur CE%sT 1988
- 1:00 EU CE%sT
-
-# Portugal
-#
-# From Rui Pedro Salgueiro (1992-11-12):
-# Portugal has recently (September, 27) changed timezone
-# (from WET to MET or CET) to harmonize with EEC.
-#
-# Martin Bruckmann (1996-02-29) reports via Peter Ilieve
-# that Portugal is reverting to 0:00 by not moving its clocks this spring.
-# The new Prime Minister was fed up with getting up in the dark in the winter.
-#
-# From Paul Eggert (1996-11-12):
-# IATA SSIM (1991-09) reports several 1991-09 and 1992-09 transitions
-# at 02:00u, not 01:00u. Assume that these are typos.
-# IATA SSIM (1991/1992) reports that the Azores were at -1:00.
-# IATA SSIM (1993-02) says +0:00; later issues (through 1996-09) say -1:00.
-# Guess that the Azores changed to EU rules in 1992 (since that's when Portugal
-# harmonized with the EU), and that they stayed +0:00 that winter.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# DSH writes that despite Decree 1,469 (1915), the change to the clocks was not
-# done every year, depending on what Spain did, because of railroad schedules.
-# Go with Shanks & Pottenger.
-Rule Port 1916 only - Jun 17 23:00 1:00 S
-# Whitman gives 1916 Oct 31; go with Shanks & Pottenger.
-Rule Port 1916 only - Nov 1 1:00 0 -
-Rule Port 1917 only - Feb 28 23:00s 1:00 S
-Rule Port 1917 1921 - Oct 14 23:00s 0 -
-Rule Port 1918 only - Mar 1 23:00s 1:00 S
-Rule Port 1919 only - Feb 28 23:00s 1:00 S
-Rule Port 1920 only - Feb 29 23:00s 1:00 S
-Rule Port 1921 only - Feb 28 23:00s 1:00 S
-Rule Port 1924 only - Apr 16 23:00s 1:00 S
-Rule Port 1924 only - Oct 14 23:00s 0 -
-Rule Port 1926 only - Apr 17 23:00s 1:00 S
-Rule Port 1926 1929 - Oct Sat>=1 23:00s 0 -
-Rule Port 1927 only - Apr 9 23:00s 1:00 S
-Rule Port 1928 only - Apr 14 23:00s 1:00 S
-Rule Port 1929 only - Apr 20 23:00s 1:00 S
-Rule Port 1931 only - Apr 18 23:00s 1:00 S
-# Whitman gives 1931 Oct 8; go with Shanks & Pottenger.
-Rule Port 1931 1932 - Oct Sat>=1 23:00s 0 -
-Rule Port 1932 only - Apr 2 23:00s 1:00 S
-Rule Port 1934 only - Apr 7 23:00s 1:00 S
-# Whitman gives 1934 Oct 5; go with Shanks & Pottenger.
-Rule Port 1934 1938 - Oct Sat>=1 23:00s 0 -
-# Shanks & Pottenger give 1935 Apr 30; go with Whitman.
-Rule Port 1935 only - Mar 30 23:00s 1:00 S
-Rule Port 1936 only - Apr 18 23:00s 1:00 S
-# Whitman gives 1937 Apr 2; go with Shanks & Pottenger.
-Rule Port 1937 only - Apr 3 23:00s 1:00 S
-Rule Port 1938 only - Mar 26 23:00s 1:00 S
-Rule Port 1939 only - Apr 15 23:00s 1:00 S
-# Whitman gives 1939 Oct 7; go with Shanks & Pottenger.
-Rule Port 1939 only - Nov 18 23:00s 0 -
-Rule Port 1940 only - Feb 24 23:00s 1:00 S
-# Shanks & Pottenger give 1940 Oct 7; go with Whitman.
-Rule Port 1940 1941 - Oct 5 23:00s 0 -
-Rule Port 1941 only - Apr 5 23:00s 1:00 S
-Rule Port 1942 1945 - Mar Sat>=8 23:00s 1:00 S
-Rule Port 1942 only - Apr 25 22:00s 2:00 M # Midsummer
-Rule Port 1942 only - Aug 15 22:00s 1:00 S
-Rule Port 1942 1945 - Oct Sat>=24 23:00s 0 -
-Rule Port 1943 only - Apr 17 22:00s 2:00 M
-Rule Port 1943 1945 - Aug Sat>=25 22:00s 1:00 S
-Rule Port 1944 1945 - Apr Sat>=21 22:00s 2:00 M
-Rule Port 1946 only - Apr Sat>=1 23:00s 1:00 S
-Rule Port 1946 only - Oct Sat>=1 23:00s 0 -
-Rule Port 1947 1949 - Apr Sun>=1 2:00s 1:00 S
-Rule Port 1947 1949 - Oct Sun>=1 2:00s 0 -
-# Shanks & Pottenger say DST was observed in 1950; go with Whitman.
-# Whitman gives Oct lastSun for 1952 on; go with Shanks & Pottenger.
-Rule Port 1951 1965 - Apr Sun>=1 2:00s 1:00 S
-Rule Port 1951 1965 - Oct Sun>=1 2:00s 0 -
-Rule Port 1977 only - Mar 27 0:00s 1:00 S
-Rule Port 1977 only - Sep 25 0:00s 0 -
-Rule Port 1978 1979 - Apr Sun>=1 0:00s 1:00 S
-Rule Port 1978 only - Oct 1 0:00s 0 -
-Rule Port 1979 1982 - Sep lastSun 1:00s 0 -
-Rule Port 1980 only - Mar lastSun 0:00s 1:00 S
-Rule Port 1981 1982 - Mar lastSun 1:00s 1:00 S
-Rule Port 1983 only - Mar lastSun 2:00s 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-# Shanks & Pottenger say the transition from LMT to WET occurred 1911-05-24;
-# Willett says 1912-01-01. Go with Willett.
-Zone Europe/Lisbon -0:36:32 - LMT 1884
- -0:36:32 - LMT 1912 Jan 1 # Lisbon Mean Time
- 0:00 Port WE%sT 1966 Apr 3 2:00
- 1:00 - CET 1976 Sep 26 1:00
- 0:00 Port WE%sT 1983 Sep 25 1:00s
- 0:00 W-Eur WE%sT 1992 Sep 27 1:00s
- 1:00 EU CE%sT 1996 Mar 31 1:00u
- 0:00 EU WE%sT
-Zone Atlantic/Azores -1:42:40 - LMT 1884 # Ponta Delgada
- -1:54:32 - HMT 1911 May 24 # Horta Mean Time
- -2:00 Port AZO%sT 1966 Apr 3 2:00 # Azores Time
- -1:00 Port AZO%sT 1983 Sep 25 1:00s
- -1:00 W-Eur AZO%sT 1992 Sep 27 1:00s
- 0:00 EU WE%sT 1993 Mar 28 1:00u
- -1:00 EU AZO%sT
-Zone Atlantic/Madeira -1:07:36 - LMT 1884 # Funchal
- -1:07:36 - FMT 1911 May 24 # Funchal Mean Time
- -1:00 Port MAD%sT 1966 Apr 3 2:00 # Madeira Time
- 0:00 Port WE%sT 1983 Sep 25 1:00s
- 0:00 EU WE%sT
-
-# Romania
-#
-# From Paul Eggert (1999-10-07):
-# <a href="http://www.nineoclock.ro/POL/1778pol.html">
-# Nine O'clock</a> (1998-10-23) reports that the switch occurred at
-# 04:00 local time in fall 1998. For lack of better info,
-# assume that Romania and Moldova switched to EU rules in 1997,
-# the same year as Bulgaria.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Romania 1932 only - May 21 0:00s 1:00 S
-Rule Romania 1932 1939 - Oct Sun>=1 0:00s 0 -
-Rule Romania 1933 1939 - Apr Sun>=2 0:00s 1:00 S
-Rule Romania 1979 only - May 27 0:00 1:00 S
-Rule Romania 1979 only - Sep lastSun 0:00 0 -
-Rule Romania 1980 only - Apr 5 23:00 1:00 S
-Rule Romania 1980 only - Sep lastSun 1:00 0 -
-Rule Romania 1991 1993 - Mar lastSun 0:00s 1:00 S
-Rule Romania 1991 1993 - Sep lastSun 0:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Bucharest 1:44:24 - LMT 1891 Oct
- 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
- 2:00 Romania EE%sT 1981 Mar 29 2:00s
- 2:00 C-Eur EE%sT 1991
- 2:00 Romania EE%sT 1994
- 2:00 E-Eur EE%sT 1997
- 2:00 EU EE%sT
-
-# Russia
-
-# From Paul Eggert (2006-03-22):
-# Except for Moscow after 1919-07-01, I invented the time zone abbreviations.
-# Moscow time zone abbreviations after 1919-07-01, and Moscow rules after 1991,
-# are from Andrey A. Chernov. The rest is from Shanks & Pottenger,
-# except we follow Chernov's report that 1992 DST transitions were Sat
-# 23:00, not Sun 02:00s.
-#
-# From Stanislaw A. Kuzikowski (1994-06-29):
-# But now it is some months since Novosibirsk is 3 hours ahead of Moscow!
-# I do not know why they have decided to make this change;
-# as far as I remember it was done exactly during winter->summer switching
-# so we (Novosibirsk) simply did not switch.
-#
-# From Andrey A. Chernov (1996-10-04):
-# `MSK' and `MSD' were born and used initially on Moscow computers with
-# UNIX-like OSes by several developer groups (e.g. Demos group, Kiae group)....
-# The next step was the UUCP network, the Relcom predecessor
-# (used mainly for mail), and MSK/MSD was actively used there.
-#
-# From Chris Carrier (1996-10-30):
-# According to a friend of mine who rode the Trans-Siberian Railroad from
-# Moscow to Irkutsk in 1995, public air and rail transport in Russia ...
-# still follows Moscow time, no matter where in Russia it is located.
-#
-# For Grozny, Chechnya, we have the following story from
-# John Daniszewski, "Scavengers in the Rubble", Los Angeles Times (2001-02-07):
-# News--often false--is spread by word of mouth. A rumor that it was
-# time to move the clocks back put this whole city out of sync with
-# the rest of Russia for two weeks--even soldiers stationed here began
-# enforcing curfew at the wrong time.
-#
-# From Gwillim Law (2001-06-05):
-# There's considerable evidence that Sakhalin Island used to be in
-# UTC+11, and has changed to UTC+10, in this decade. I start with the
-# SSIM, which listed Yuzhno-Sakhalinsk in zone RU10 along with Magadan
-# until February 1997, and then in RU9 with Khabarovsk and Vladivostok
-# since September 1997.... Although the Kuril Islands are
-# administratively part of Sakhalin oblast', they appear to have
-# remained on UTC+11 along with Magadan.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-#
-# Kaliningradskaya oblast'.
-Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr
- 1:00 C-Eur CE%sT 1945
- 2:00 Poland CE%sT 1946
- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
- 2:00 Russia EE%sT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Respublika Adygeya, Arkhangel'skaya oblast',
-# Belgorodskaya oblast', Bryanskaya oblast', Vladimirskaya oblast',
-# Vologodskaya oblast', Voronezhskaya oblast',
-# Respublika Dagestan, Ivanovskaya oblast', Respublika Ingushetiya,
-# Kabarbino-Balkarskaya Respublika, Respublika Kalmykiya,
-# Kalyzhskaya oblast', Respublika Karachaevo-Cherkessiya,
-# Respublika Kareliya, Respublika Komi,
-# Kostromskaya oblast', Krasnodarskij kraj, Kurskaya oblast',
-# Leningradskaya oblast', Lipetskaya oblast', Respublika Marij El,
-# Respublika Mordoviya, Moskva, Moskovskaya oblast',
-# Murmanskaya oblast', Nenetskij avtonomnyj okrug,
-# Nizhegorodskaya oblast', Novgorodskaya oblast', Orlovskaya oblast',
-# Penzenskaya oblast', Pskovskaya oblast', Rostovskaya oblast',
-# Ryazanskaya oblast', Sankt-Peterburg,
-# Respublika Severnaya Osetiya, Smolenskaya oblast',
-# Stavropol'skij kraj, Tambovskaya oblast', Respublika Tatarstan,
-# Tverskaya oblast', Tyl'skaya oblast', Ul'yanovskaya oblast',
-# Chechenskaya Respublika, Chuvashskaya oblast',
-# Yaroslavskaya oblast'
-Zone Europe/Moscow 2:30:20 - LMT 1880
- 2:30 - MMT 1916 Jul 3 # Moscow Mean Time
- 2:30:48 Russia %s 1919 Jul 1 2:00
- 3:00 Russia MSK/MSD 1922 Oct
- 2:00 - EET 1930 Jun 21
- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
- 2:00 Russia EE%sT 1992 Jan 19 2:00s
- 3:00 Russia MSK/MSD
-#
-# Astrakhanskaya oblast', Kirovskaya oblast', Saratovskaya oblast',
-# Volgogradskaya oblast'. Shanks & Pottenger say Kirov is still at +0400
-# but Wikipedia (2006-05-09) says +0300. Perhaps it switched after the
-# others? But we have no data.
-Zone Europe/Volgograd 2:57:40 - LMT 1920 Jan 3
- 3:00 - TSAT 1925 Apr 6 # Tsaritsyn Time
- 3:00 - STAT 1930 Jun 21 # Stalingrad Time
- 4:00 - STAT 1961 Nov 11
- 4:00 Russia VOL%sT 1989 Mar 26 2:00s # Volgograd T
- 3:00 Russia VOL%sT 1991 Mar 31 2:00s
- 4:00 - VOLT 1992 Mar 29 2:00s
- 3:00 Russia VOL%sT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Samarskaya oblast', Udmyrtskaya respublika
-Zone Europe/Samara 3:20:36 - LMT 1919 Jul 1 2:00
- 3:00 - SAMT 1930 Jun 21
- 4:00 - SAMT 1935 Jan 27
- 4:00 Russia KUY%sT 1989 Mar 26 2:00s # Kuybyshev
- 3:00 Russia KUY%sT 1991 Mar 31 2:00s
- 2:00 Russia KUY%sT 1991 Sep 29 2:00s
- 3:00 - KUYT 1991 Oct 20 3:00
- 4:00 Russia SAM%sT # Samara Time
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Respublika Bashkortostan, Komi-Permyatskij avtonomnyj okrug,
-# Kurganskaya oblast', Orenburgskaya oblast', Permskaya oblast',
-# Sverdlovskaya oblast', Tyumenskaya oblast',
-# Khanty-Manskijskij avtonomnyj okrug, Chelyabinskaya oblast',
-# Yamalo-Nenetskij avtonomnyj okrug.
-Zone Asia/Yekaterinburg 4:02:24 - LMT 1919 Jul 15 4:00
- 4:00 - SVET 1930 Jun 21 # Sverdlovsk Time
- 5:00 Russia SVE%sT 1991 Mar 31 2:00s
- 4:00 Russia SVE%sT 1992 Jan 19 2:00s
- 5:00 Russia YEK%sT # Yekaterinburg Time
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Respublika Altaj, Altajskij kraj, Omskaya oblast'.
-Zone Asia/Omsk 4:53:36 - LMT 1919 Nov 14
- 5:00 - OMST 1930 Jun 21 # Omsk TIme
- 6:00 Russia OMS%sT 1991 Mar 31 2:00s
- 5:00 Russia OMS%sT 1992 Jan 19 2:00s
- 6:00 Russia OMS%sT
-#
-# From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's
-# not clear when it switched from +7 to +6.
-# Novosibirskaya oblast', Tomskaya oblast'.
-Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00
- 6:00 - NOVT 1930 Jun 21 # Novosibirsk Time
- 7:00 Russia NOV%sT 1991 Mar 31 2:00s
- 6:00 Russia NOV%sT 1992 Jan 19 2:00s
- 7:00 Russia NOV%sT 1993 May 23 # say Shanks & P.
- 6:00 Russia NOV%sT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Kemerovskaya oblast', Krasnoyarskij kraj,
-# Tajmyrskij (Dolgano-Nenetskij) avtonomnyj okrug,
-# Respublika Tuva, Respublika Khakasiya, Evenkijskij avtonomnyj okrug.
-Zone Asia/Krasnoyarsk 6:11:20 - LMT 1920 Jan 6
- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
- 7:00 Russia KRA%sT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Respublika Buryatiya, Irkutskaya oblast',
-# Ust'-Ordynskij Buryatskij avtonomnyj okrug.
-Zone Asia/Irkutsk 6:57:20 - LMT 1880
- 6:57:20 - IMT 1920 Jan 25 # Irkutsk Mean Time
- 7:00 - IRKT 1930 Jun 21 # Irkutsk Time
- 8:00 Russia IRK%sT 1991 Mar 31 2:00s
- 7:00 Russia IRK%sT 1992 Jan 19 2:00s
- 8:00 Russia IRK%sT
-#
-# From Oscar van Vlijmen (2003-10-18): [This region consists of]
-# Aginskij Buryatskij avtonomnyj okrug, Amurskaya oblast',
-# [parts of] Respublika Sakha (Yakutiya), Chitinskaya oblast'.
-# The Sakha districts are: Aldanskij, Amginskij, Anabarskij,
-# Bulunskij, Verkhnekolymskij, Verkhnevilyujskij, Vilyujskij, Gornyj,
-# Zhiganskij, Kobyajskij, Lenskij, Megino-Kangalasskij, Mirninskij,
-# Namskij, Nyurbinskij, Olenekskij, Olekminskij, Srednekolymskij,
-# Suntarskij, Tattinskij, Ust'-Aldanskij, Khangalasskij,
-# Churapchinskij, Eveno-Bytantajskij.
-Zone Asia/Yakutsk 8:38:40 - LMT 1919 Dec 15
- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
- 9:00 Russia YAK%sT
-#
-# From Oscar van Vlijmen (2003-10-18): [This region consists of]
-# Evrejskaya avtonomnaya oblast', Khabarovskij kraj, Primorskij kraj,
-# [parts of] Respublika Sakha (Yakutiya).
-# The Sakha districts are: Verkhoyanskij, Tomponskij, Ust'-Majskij,
-# Ust'-Yanskij.
-Zone Asia/Vladivostok 8:47:44 - LMT 1922 Nov 15
- 9:00 - VLAT 1930 Jun 21 # Vladivostok Time
- 10:00 Russia VLA%sT 1991 Mar 31 2:00s
- 9:00 Russia VLA%sST 1992 Jan 19 2:00s
- 10:00 Russia VLA%sT
-#
-# Sakhalinskaya oblast'.
-# The Zone name should be Yuzhno-Sakhalinsk, but that's too long.
-Zone Asia/Sakhalin 9:30:48 - LMT 1905 Aug 23
- 9:00 - CJT 1938
- 9:00 - JST 1945 Aug 25
- 11:00 Russia SAK%sT 1991 Mar 31 2:00s # Sakhalin T.
- 10:00 Russia SAK%sT 1992 Jan 19 2:00s
- 11:00 Russia SAK%sT 1997 Mar lastSun 2:00s
- 10:00 Russia SAK%sT
-#
-# From Oscar van Vlijmen (2003-10-18): [This region consists of]
-# Magadanskaya oblast', Respublika Sakha (Yakutiya).
-# Probably also: Kuril Islands.
-# The Sakha districts are: Abyjskij, Allaikhovskij, Momskij,
-# Nizhnekolymskij, Ojmyakonskij.
-Zone Asia/Magadan 10:03:12 - LMT 1924 May 2
- 10:00 - MAGT 1930 Jun 21 # Magadan Time
- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
- 11:00 Russia MAG%sT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Kamchatskaya oblast', Koryakskij avtonomnyj okrug.
-#
-# The Zone name should be Asia/Petropavlovsk-Kamchatski, but that's too long.
-Zone Asia/Kamchatka 10:34:36 - LMT 1922 Nov 10
- 11:00 - PETT 1930 Jun 21 # P-K Time
- 12:00 Russia PET%sT 1991 Mar 31 2:00s
- 11:00 Russia PET%sT 1992 Jan 19 2:00s
- 12:00 Russia PET%sT
-#
-# Chukotskij avtonomnyj okrug
-Zone Asia/Anadyr 11:49:56 - LMT 1924 May 2
- 12:00 - ANAT 1930 Jun 21 # Anadyr Time
- 13:00 Russia ANA%sT 1982 Apr 1 0:00s
- 12:00 Russia ANA%sT 1991 Mar 31 2:00s
- 11:00 Russia ANA%sT 1992 Jan 19 2:00s
- 12:00 Russia ANA%sT
-
-# Serbia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Belgrade 1:22:00 - LMT 1884
- 1:00 - CET 1941 Apr 18 23:00
- 1:00 C-Eur CE%sT 1945
- 1:00 - CET 1945 May 8 2:00s
- 1:00 1:00 CEST 1945 Sep 16 2:00s
-# Metod Kozelj reports that the legal date of
-# transition to EU rules was 1982-11-27, for all of Yugoslavia at the time.
-# Shanks & Pottenger don't give as much detail, so go with Kozelj.
- 1:00 - CET 1982 Nov 27
- 1:00 EU CE%sT
-Link Europe/Belgrade Europe/Ljubljana # Slovenia
-Link Europe/Belgrade Europe/Podgorica # Montenegro
-Link Europe/Belgrade Europe/Sarajevo # Bosnia and Herzegovina
-Link Europe/Belgrade Europe/Skopje # Macedonia
-Link Europe/Belgrade Europe/Zagreb # Croatia
-
-# Slovakia
-Link Europe/Prague Europe/Bratislava
-
-# Slovenia
-# see Serbia
-
-# Spain
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# For 1917-1919 Whitman gives Apr Sat>=1 - Oct Sat>=1;
-# go with Shanks & Pottenger.
-Rule Spain 1917 only - May 5 23:00s 1:00 S
-Rule Spain 1917 1919 - Oct 6 23:00s 0 -
-Rule Spain 1918 only - Apr 15 23:00s 1:00 S
-Rule Spain 1919 only - Apr 5 23:00s 1:00 S
-# Whitman gives 1921 Feb 28 - Oct 14; go with Shanks & Pottenger.
-Rule Spain 1924 only - Apr 16 23:00s 1:00 S
-# Whitman gives 1924 Oct 14; go with Shanks & Pottenger.
-Rule Spain 1924 only - Oct 4 23:00s 0 -
-Rule Spain 1926 only - Apr 17 23:00s 1:00 S
-# Whitman says no DST in 1929; go with Shanks & Pottenger.
-Rule Spain 1926 1929 - Oct Sat>=1 23:00s 0 -
-Rule Spain 1927 only - Apr 9 23:00s 1:00 S
-Rule Spain 1928 only - Apr 14 23:00s 1:00 S
-Rule Spain 1929 only - Apr 20 23:00s 1:00 S
-# Whitman gives 1937 Jun 16, 1938 Apr 16, 1940 Apr 13;
-# go with Shanks & Pottenger.
-Rule Spain 1937 only - May 22 23:00s 1:00 S
-Rule Spain 1937 1939 - Oct Sat>=1 23:00s 0 -
-Rule Spain 1938 only - Mar 22 23:00s 1:00 S
-Rule Spain 1939 only - Apr 15 23:00s 1:00 S
-Rule Spain 1940 only - Mar 16 23:00s 1:00 S
-# Whitman says no DST 1942-1945; go with Shanks & Pottenger.
-Rule Spain 1942 only - May 2 22:00s 2:00 M # Midsummer
-Rule Spain 1942 only - Sep 1 22:00s 1:00 S
-Rule Spain 1943 1946 - Apr Sat>=13 22:00s 2:00 M
-Rule Spain 1943 only - Oct 3 22:00s 1:00 S
-Rule Spain 1944 only - Oct 10 22:00s 1:00 S
-Rule Spain 1945 only - Sep 30 1:00 1:00 S
-Rule Spain 1946 only - Sep 30 0:00 0 -
-Rule Spain 1949 only - Apr 30 23:00 1:00 S
-Rule Spain 1949 only - Sep 30 1:00 0 -
-Rule Spain 1974 1975 - Apr Sat>=13 23:00 1:00 S
-Rule Spain 1974 1975 - Oct Sun>=1 1:00 0 -
-Rule Spain 1976 only - Mar 27 23:00 1:00 S
-Rule Spain 1976 1977 - Sep lastSun 1:00 0 -
-Rule Spain 1977 1978 - Apr 2 23:00 1:00 S
-Rule Spain 1978 only - Oct 1 1:00 0 -
-# The following rules are copied from Morocco from 1967 through 1978.
-Rule SpainAfrica 1967 only - Jun 3 12:00 1:00 S
-Rule SpainAfrica 1967 only - Oct 1 0:00 0 -
-Rule SpainAfrica 1974 only - Jun 24 0:00 1:00 S
-Rule SpainAfrica 1974 only - Sep 1 0:00 0 -
-Rule SpainAfrica 1976 1977 - May 1 0:00 1:00 S
-Rule SpainAfrica 1976 only - Aug 1 0:00 0 -
-Rule SpainAfrica 1977 only - Sep 28 0:00 0 -
-Rule SpainAfrica 1978 only - Jun 1 0:00 1:00 S
-Rule SpainAfrica 1978 only - Aug 4 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Madrid -0:14:44 - LMT 1901 Jan 1 0:00s
- 0:00 Spain WE%sT 1946 Sep 30
- 1:00 Spain CE%sT 1979
- 1:00 EU CE%sT
-Zone Africa/Ceuta -0:21:16 - LMT 1901
- 0:00 - WET 1918 May 6 23:00
- 0:00 1:00 WEST 1918 Oct 7 23:00
- 0:00 - WET 1924
- 0:00 Spain WE%sT 1929
- 0:00 SpainAfrica WE%sT 1984 Mar 16
- 1:00 - CET 1986
- 1:00 EU CE%sT
-Zone Atlantic/Canary -1:01:36 - LMT 1922 Mar # Las Palmas de Gran C.
- -1:00 - CANT 1946 Sep 30 1:00 # Canaries Time
- 0:00 - WET 1980 Apr 6 0:00s
- 0:00 1:00 WEST 1980 Sep 28 0:00s
- 0:00 EU WE%sT
-# IATA SSIM (1996-09) says the Canaries switch at 2:00u, not 1:00u.
-# Ignore this for now, as the Canaries are part of the EU.
-
-# Sweden
-
-# From Ivan Nilsson (2001-04-13), superseding Shanks & Pottenger:
-#
-# The law "Svensk forfattningssamling 1878, no 14" about standard time in 1879:
-# From the beginning of 1879 (that is 01-01 00:00) the time for all
-# places in the country is "the mean solar time for the meridian at
-# three degrees, or twelve minutes of time, to the west of the
-# meridian of the Observatory of Stockholm". The law is dated 1878-05-31.
-#
-# The observatory at that time had the meridian 18 degrees 03' 30"
-# eastern longitude = 01:12:14 in time. Less 12 minutes gives the
-# national standard time as 01:00:14 ahead of GMT....
-#
-# About the beginning of CET in Sweden. The lawtext ("Svensk
-# forfattningssamling 1899, no 44") states, that "from the beginning
-# of 1900... ... the same as the mean solar time for the meridian at
-# the distance of one hour of time from the meridian of the English
-# observatory at Greenwich, or at 12 minutes 14 seconds to the west
-# from the meridian of the Observatory of Stockholm". The law is dated
-# 1899-06-16. In short: At 1900-01-01 00:00:00 the new standard time
-# in Sweden is 01:00:00 ahead of GMT.
-#
-# 1916: The lawtext ("Svensk forfattningssamling 1916, no 124") states
-# that "1916-05-15 is considered to begin one hour earlier". It is
-# pretty obvious that at 05-14 23:00 the clocks are set to 05-15 00:00....
-# Further the law says, that "1916-09-30 is considered to end one hour later".
-#
-# The laws regulating [DST] are available on the site of the Swedish
-# Parliament beginning with 1985 - the laws regulating 1980/1984 are
-# not available on the site (to my knowledge they are only available
-# in Swedish): <http://www.riksdagen.se/english/work/sfst.asp> (type
-# "sommartid" without the quotes in the field "Fritext" and then click
-# the Sok-button).
-#
-# (2001-05-13):
-#
-# I have now found a newspaper stating that at 1916-10-01 01:00
-# summertime the church-clocks etc were set back one hour to show
-# 1916-10-01 00:00 standard time. The article also reports that some
-# people thought the switch to standard time would take place already
-# at 1916-10-01 00:00 summer time, but they had to wait for another
-# hour before the event took place.
-#
-# Source: The newspaper "Dagens Nyheter", 1916-10-01, page 7 upper left.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Stockholm 1:12:12 - LMT 1879 Jan 1
- 1:00:14 - SET 1900 Jan 1 # Swedish Time
- 1:00 - CET 1916 May 14 23:00
- 1:00 1:00 CEST 1916 Oct 1 01:00
- 1:00 - CET 1980
- 1:00 EU CE%sT
-
-# Switzerland
-# From Howse:
-# By the end of the 18th century clocks and watches became commonplace
-# and their performance improved enormously. Communities began to keep
-# mean time in preference to apparent time -- Geneva from 1780 ....
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# From Whitman (who writes ``Midnight?''):
-Rule Swiss 1940 only - Nov 2 0:00 1:00 S
-Rule Swiss 1940 only - Dec 31 0:00 0 -
-# From Shanks & Pottenger:
-Rule Swiss 1941 1942 - May Sun>=1 2:00 1:00 S
-Rule Swiss 1941 1942 - Oct Sun>=1 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Zurich 0:34:08 - LMT 1848 Sep 12
- 0:29:44 - BMT 1894 Jun # Bern Mean Time
- 1:00 Swiss CE%sT 1981
- 1:00 EU CE%sT
-
-# Turkey
-
-# From Amar Devegowda (2007-01-03):
-# The time zone rules for Istanbul, Turkey have not been changed for years now.
-# ... The latest rules are available at -
-# http://www.timeanddate.com/worldclock/timezone.html?n=107
-# From Steffen Thorsen (2007-01-03):
-# I have been able to find press records back to 1996 which all say that
-# DST started 01:00 local time and end at 02:00 local time. I am not sure
-# what happened before that. One example for each year from 1996 to 2001:
-# http://newspot.byegm.gov.tr/arsiv/1996/21/N4.htm
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING97/03/97X03X25.TXT
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING98/03/98X03X02.HTM
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING99/10/99X10X26.HTM#%2016
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2000/03/00X03X06.HTM#%2021
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2001/03/23x03x01.HTM#%2027
-# From Paul Eggert (2007-01-03):
-# Prefer the above source to Shanks & Pottenger for time stamps after 1990.
-
-# From Steffen Thorsen (2007-03-09):
-# Starting 2007 though, it seems that they are adopting EU's 1:00 UTC
-# start/end time, according to the following page (2007-03-07):
-# http://www.ntvmsnbc.com/news/402029.asp
-# The official document is located here - it is in Turkish...:
-# http://rega.basbakanlik.gov.tr/eskiler/2007/03/20070307-7.htm
-# I was able to locate the following seemingly official document
-# (on a non-government server though) describing dates between 2002 and 2006:
-# http://www.alomaliye.com/bkk_2002_3769.htm
-
-# From Sue Williams (2008-08-11):
-# I spotted this news article about a potential change in Turkey.
-#
-# <a href="http://www.hurriyet.com.tr/english/domestic/9626174.asp?scr=1">
-# http://www.hurriyet.com.tr/english/domestic/9626174.asp?scr=1
-# </a>
-
-# From Sue Williams (2008-08-20):
-# This article says that around the end of March 2011, Turkey wants to
-# adjust the clocks forward by 1/2 hour and stay that way permanently.
-# The article indicates that this is a change in timezone offset in addition
-# to stopping observance of DST.
-# This proposal has not yet been approved.
-#
-# Read more here...
-#
-# Turkey to abandon daylight saving time in 2011
-# <a href="http://www.turkishdailynews.com.tr/article.php?enewsid=112989">
-# http://www.turkishdailynews.com.tr/article.php?enewsid=112989
-# </a>
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Turkey 1916 only - May 1 0:00 1:00 S
-Rule Turkey 1916 only - Oct 1 0:00 0 -
-Rule Turkey 1920 only - Mar 28 0:00 1:00 S
-Rule Turkey 1920 only - Oct 25 0:00 0 -
-Rule Turkey 1921 only - Apr 3 0:00 1:00 S
-Rule Turkey 1921 only - Oct 3 0:00 0 -
-Rule Turkey 1922 only - Mar 26 0:00 1:00 S
-Rule Turkey 1922 only - Oct 8 0:00 0 -
-# Whitman gives 1923 Apr 28 - Sep 16 and no DST in 1924-1925;
-# go with Shanks & Pottenger.
-Rule Turkey 1924 only - May 13 0:00 1:00 S
-Rule Turkey 1924 1925 - Oct 1 0:00 0 -
-Rule Turkey 1925 only - May 1 0:00 1:00 S
-Rule Turkey 1940 only - Jun 30 0:00 1:00 S
-Rule Turkey 1940 only - Oct 5 0:00 0 -
-Rule Turkey 1940 only - Dec 1 0:00 1:00 S
-Rule Turkey 1941 only - Sep 21 0:00 0 -
-Rule Turkey 1942 only - Apr 1 0:00 1:00 S
-# Whitman omits the next two transition and gives 1945 Oct 1;
-# go with Shanks & Pottenger.
-Rule Turkey 1942 only - Nov 1 0:00 0 -
-Rule Turkey 1945 only - Apr 2 0:00 1:00 S
-Rule Turkey 1945 only - Oct 8 0:00 0 -
-Rule Turkey 1946 only - Jun 1 0:00 1:00 S
-Rule Turkey 1946 only - Oct 1 0:00 0 -
-Rule Turkey 1947 1948 - Apr Sun>=16 0:00 1:00 S
-Rule Turkey 1947 1950 - Oct Sun>=2 0:00 0 -
-Rule Turkey 1949 only - Apr 10 0:00 1:00 S
-Rule Turkey 1950 only - Apr 19 0:00 1:00 S
-Rule Turkey 1951 only - Apr 22 0:00 1:00 S
-Rule Turkey 1951 only - Oct 8 0:00 0 -
-Rule Turkey 1962 only - Jul 15 0:00 1:00 S
-Rule Turkey 1962 only - Oct 8 0:00 0 -
-Rule Turkey 1964 only - May 15 0:00 1:00 S
-Rule Turkey 1964 only - Oct 1 0:00 0 -
-Rule Turkey 1970 1972 - May Sun>=2 0:00 1:00 S
-Rule Turkey 1970 1972 - Oct Sun>=2 0:00 0 -
-Rule Turkey 1973 only - Jun 3 1:00 1:00 S
-Rule Turkey 1973 only - Nov 4 3:00 0 -
-Rule Turkey 1974 only - Mar 31 2:00 1:00 S
-Rule Turkey 1974 only - Nov 3 5:00 0 -
-Rule Turkey 1975 only - Mar 30 0:00 1:00 S
-Rule Turkey 1975 1976 - Oct lastSun 0:00 0 -
-Rule Turkey 1976 only - Jun 1 0:00 1:00 S
-Rule Turkey 1977 1978 - Apr Sun>=1 0:00 1:00 S
-Rule Turkey 1977 only - Oct 16 0:00 0 -
-Rule Turkey 1979 1980 - Apr Sun>=1 3:00 1:00 S
-Rule Turkey 1979 1982 - Oct Mon>=11 0:00 0 -
-Rule Turkey 1981 1982 - Mar lastSun 3:00 1:00 S
-Rule Turkey 1983 only - Jul 31 0:00 1:00 S
-Rule Turkey 1983 only - Oct 2 0:00 0 -
-Rule Turkey 1985 only - Apr 20 0:00 1:00 S
-Rule Turkey 1985 only - Sep 28 0:00 0 -
-Rule Turkey 1986 1990 - Mar lastSun 2:00s 1:00 S
-Rule Turkey 1986 1990 - Sep lastSun 2:00s 0 -
-Rule Turkey 1991 2006 - Mar lastSun 1:00s 1:00 S
-Rule Turkey 1991 1995 - Sep lastSun 1:00s 0 -
-Rule Turkey 1996 2006 - Oct lastSun 1:00s 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Istanbul 1:55:52 - LMT 1880
- 1:56:56 - IMT 1910 Oct # Istanbul Mean Time?
- 2:00 Turkey EE%sT 1978 Oct 15
- 3:00 Turkey TR%sT 1985 Apr 20 # Turkey Time
- 2:00 Turkey EE%sT 2007
- 2:00 EU EE%sT
-Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents.
-
-# Ukraine
-#
-# From Igor Karpov, who works for the Ukranian Ministry of Justice,
-# via Garrett Wollman (2003-01-27):
-# BTW, I've found the official document on this matter. It's goverment
-# regulations number 509, May 13, 1996. In my poor translation it says:
-# "Time in Ukraine is set to second timezone (Kiev time). Each last Sunday
-# of March at 3am the time is changing to 4am and each last Sunday of
-# October the time at 4am is changing to 3am"
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-# Most of Ukraine since 1970 has been like Kiev.
-# "Kyiv" is the transliteration of the Ukrainian name, but
-# "Kiev" is more common in English.
-Zone Europe/Kiev 2:02:04 - LMT 1880
- 2:02:04 - KMT 1924 May 2 # Kiev Mean Time
- 2:00 - EET 1930 Jun 21
- 3:00 - MSK 1941 Sep 20
- 1:00 C-Eur CE%sT 1943 Nov 6
- 3:00 Russia MSK/MSD 1990
- 3:00 - MSK 1990 Jul 1 2:00
- 2:00 - EET 1992
- 2:00 E-Eur EE%sT 1995
- 2:00 EU EE%sT
-# Ruthenia used CET 1990/1991.
-# "Uzhhorod" is the transliteration of the Ukrainian name, but
-# "Uzhgorod" is more common in English.
-Zone Europe/Uzhgorod 1:29:12 - LMT 1890 Oct
- 1:00 - CET 1940
- 1:00 C-Eur CE%sT 1944 Oct
- 1:00 1:00 CEST 1944 Oct 26
- 1:00 - CET 1945 Jun 29
- 3:00 Russia MSK/MSD 1990
- 3:00 - MSK 1990 Jul 1 2:00
- 1:00 - CET 1991 Mar 31 3:00
- 2:00 - EET 1992
- 2:00 E-Eur EE%sT 1995
- 2:00 EU EE%sT
-# Zaporozh'ye and eastern Lugansk oblasts observed DST 1990/1991.
-# "Zaporizhia" is the transliteration of the Ukrainian name, but
-# "Zaporozh'ye" is more common in English. Use the common English
-# spelling, except omit the apostrophe as it is not allowed in
-# portable Posix file names.
-Zone Europe/Zaporozhye 2:20:40 - LMT 1880
- 2:20 - CUT 1924 May 2 # Central Ukraine T
- 2:00 - EET 1930 Jun 21
- 3:00 - MSK 1941 Aug 25
- 1:00 C-Eur CE%sT 1943 Oct 25
- 3:00 Russia MSK/MSD 1991 Mar 31 2:00
- 2:00 E-Eur EE%sT 1995
- 2:00 EU EE%sT
-# Central Crimea used Moscow time 1994/1997.
-Zone Europe/Simferopol 2:16:24 - LMT 1880
- 2:16 - SMT 1924 May 2 # Simferopol Mean T
- 2:00 - EET 1930 Jun 21
- 3:00 - MSK 1941 Nov
- 1:00 C-Eur CE%sT 1944 Apr 13
- 3:00 Russia MSK/MSD 1990
- 3:00 - MSK 1990 Jul 1 2:00
- 2:00 - EET 1992
-# From Paul Eggert (2006-03-22):
-# The _Economist_ (1994-05-28, p 45) reports that central Crimea switched
-# from Kiev to Moscow time sometime after the January 1994 elections.
-# Shanks (1999) says ``date of change uncertain'', but implies that it happened
-# sometime between the 1994 DST switches. Shanks & Pottenger simply say
-# 1994-09-25 03:00, but that can't be right. For now, guess it
-# changed in May.
- 2:00 E-Eur EE%sT 1994 May
-# From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev.
- 3:00 E-Eur MSK/MSD 1996 Mar 31 3:00s
- 3:00 1:00 MSD 1996 Oct 27 3:00s
-# IATA SSIM (1997-09) says Crimea switched to EET/EEST.
-# Assume it happened in March by not changing the clocks.
- 3:00 Russia MSK/MSD 1997
- 3:00 - MSK 1997 Mar lastSun 1:00u
- 2:00 EU EE%sT
-
-###############################################################################
-
-# One source shows that Bulgaria, Cyprus, Finland, and Greece observe DST from
-# the last Sunday in March to the last Sunday in September in 1986.
-# The source shows Romania changing a day later than everybody else.
-#
-# According to Bernard Sieloff's source, Poland is in the MET time zone but
-# uses the WE DST rules. The Western USSR uses EET+1 and ME DST rules.
-# Bernard Sieloff's source claims Romania switches on the same day, but at
-# 00:00 standard time (i.e., 01:00 DST). It also claims that Turkey
-# switches on the same day, but switches on at 01:00 standard time
-# and off at 00:00 standard time (i.e., 01:00 DST)
-
-# ...
-# Date: Wed, 28 Jan 87 16:56:27 -0100
-# From: Tom Hofmann
-# ...
-#
-# ...the European time rules are...standardized since 1981, when
-# most European coun[tr]ies started DST. Before that year, only
-# a few countries (UK, France, Italy) had DST, each according
-# to own national rules. In 1981, however, DST started on
-# 'Apr firstSun', and not on 'Mar lastSun' as in the following
-# years...
-# But also since 1981 there are some more national exceptions
-# than listed in 'europe': Switzerland, for example, joined DST
-# one year later, Denmark ended DST on 'Oct 1' instead of 'Sep
-# lastSun' in 1981---I don't know how they handle now.
-#
-# Finally, DST ist always from 'Apr 1' to 'Oct 1' in the
-# Soviet Union (as far as I know).
-#
-# Tom Hofmann, Scientific Computer Center, CIBA-GEIGY AG,
-# 4002 Basle, Switzerland
-# ...
-
-# ...
-# Date: Wed, 4 Feb 87 22:35:22 +0100
-# From: Dik T. Winter
-# ...
-#
-# The information from Tom Hofmann is (as far as I know) not entirely correct.
-# After a request from chongo at amdahl I tried to retrieve all information
-# about DST in Europe. I was able to find all from about 1969.
-#
-# ...standardization on DST in Europe started in about 1977 with switches on
-# first Sunday in April and last Sunday in September...
-# In 1981 UK joined Europe insofar that
-# the starting day for both shifted to last Sunday in March. And from 1982
-# the whole of Europe used DST, with switch dates April 1 and October 1 in
-# the Sov[i]et Union. In 1985 the SU reverted to standard Europe[a]n switch
-# dates...
-#
-# It should also be remembered that time-zones are not constants; e.g.
-# Portugal switched in 1976 from MET (or CET) to WET with DST...
-# Note also that though there were rules for switch dates not
-# all countries abided to these dates, and many individual deviations
-# occurred, though not since 1982 I believe. Another note: it is always
-# assumed that DST is 1 hour ahead of normal time, this need not be the
-# case; at least in the Netherlands there have been times when DST was 2 hours
-# in advance of normal time.
-#
-# ...
-# dik t. winter, cwi, amsterdam, nederland
-# ...
-
-# From Bob Devine (1988-01-28):
-# ...
-# Greece: Last Sunday in April to last Sunday in September (iffy on dates).
-# Since 1978. Change at midnight.
-# ...
-# Monaco: has same DST as France.
-# ...
diff --git a/tools/zoneinfo/tzdata2008h/factory b/tools/zoneinfo/tzdata2008h/factory
deleted file mode 100644
index 946063c..0000000
--- a/tools/zoneinfo/tzdata2008h/factory
+++ /dev/null
@@ -1,8 +0,0 @@
-# @(#)factory 8.1
-
-# For companies who don't want to put time zone specification in
-# their installation procedures. When users run date, they'll get the message.
-# Also useful for the "comp.sources" version.
-
-# Zone NAME GMTOFF RULES FORMAT
-Zone Factory 0 - "Local time zone must be set--see zic manual page"
diff --git a/tools/zoneinfo/tzdata2008h/iso3166.tab b/tools/zoneinfo/tzdata2008h/iso3166.tab
deleted file mode 100644
index 8d62399..0000000
--- a/tools/zoneinfo/tzdata2008h/iso3166.tab
+++ /dev/null
@@ -1,269 +0,0 @@
-# ISO 3166 alpha-2 country codes
-#
-# @(#)iso3166.tab 8.5
-#
-# From Paul Eggert (2006-09-27):
-#
-# This file contains a table with the following columns:
-# 1. ISO 3166-1 alpha-2 country code, current as of
-# ISO 3166-1 Newsletter VI-1 (2007-09-21). See:
-# <a href="http://www.iso.org/iso/en/prods-services/iso3166ma/index.html">
-# ISO 3166 Maintenance agency (ISO 3166/MA)
-# </a>.
-# 2. The usual English name for the country,
-# chosen so that alphabetic sorting of subsets produces helpful lists.
-# This is not the same as the English name in the ISO 3166 tables.
-#
-# Columns are separated by a single tab.
-# The table is sorted by country code.
-#
-# Lines beginning with `#' are comments.
-#
-#country-
-#code country name
-AD Andorra
-AE United Arab Emirates
-AF Afghanistan
-AG Antigua & Barbuda
-AI Anguilla
-AL Albania
-AM Armenia
-AN Netherlands Antilles
-AO Angola
-AQ Antarctica
-AR Argentina
-AS Samoa (American)
-AT Austria
-AU Australia
-AW Aruba
-AX Aaland Islands
-AZ Azerbaijan
-BA Bosnia & Herzegovina
-BB Barbados
-BD Bangladesh
-BE Belgium
-BF Burkina Faso
-BG Bulgaria
-BH Bahrain
-BI Burundi
-BJ Benin
-BL St Barthelemy
-BM Bermuda
-BN Brunei
-BO Bolivia
-BR Brazil
-BS Bahamas
-BT Bhutan
-BV Bouvet Island
-BW Botswana
-BY Belarus
-BZ Belize
-CA Canada
-CC Cocos (Keeling) Islands
-CD Congo (Dem. Rep.)
-CF Central African Rep.
-CG Congo (Rep.)
-CH Switzerland
-CI Cote d'Ivoire
-CK Cook Islands
-CL Chile
-CM Cameroon
-CN China
-CO Colombia
-CR Costa Rica
-CU Cuba
-CV Cape Verde
-CX Christmas Island
-CY Cyprus
-CZ Czech Republic
-DE Germany
-DJ Djibouti
-DK Denmark
-DM Dominica
-DO Dominican Republic
-DZ Algeria
-EC Ecuador
-EE Estonia
-EG Egypt
-EH Western Sahara
-ER Eritrea
-ES Spain
-ET Ethiopia
-FI Finland
-FJ Fiji
-FK Falkland Islands
-FM Micronesia
-FO Faroe Islands
-FR France
-GA Gabon
-GB Britain (UK)
-GD Grenada
-GE Georgia
-GF French Guiana
-GG Guernsey
-GH Ghana
-GI Gibraltar
-GL Greenland
-GM Gambia
-GN Guinea
-GP Guadeloupe
-GQ Equatorial Guinea
-GR Greece
-GS South Georgia & the South Sandwich Islands
-GT Guatemala
-GU Guam
-GW Guinea-Bissau
-GY Guyana
-HK Hong Kong
-HM Heard Island & McDonald Islands
-HN Honduras
-HR Croatia
-HT Haiti
-HU Hungary
-ID Indonesia
-IE Ireland
-IL Israel
-IM Isle of Man
-IN India
-IO British Indian Ocean Territory
-IQ Iraq
-IR Iran
-IS Iceland
-IT Italy
-JE Jersey
-JM Jamaica
-JO Jordan
-JP Japan
-KE Kenya
-KG Kyrgyzstan
-KH Cambodia
-KI Kiribati
-KM Comoros
-KN St Kitts & Nevis
-KP Korea (North)
-KR Korea (South)
-KW Kuwait
-KY Cayman Islands
-KZ Kazakhstan
-LA Laos
-LB Lebanon
-LC St Lucia
-LI Liechtenstein
-LK Sri Lanka
-LR Liberia
-LS Lesotho
-LT Lithuania
-LU Luxembourg
-LV Latvia
-LY Libya
-MA Morocco
-MC Monaco
-MD Moldova
-ME Montenegro
-MF St Martin (French part)
-MG Madagascar
-MH Marshall Islands
-MK Macedonia
-ML Mali
-MM Myanmar (Burma)
-MN Mongolia
-MO Macau
-MP Northern Mariana Islands
-MQ Martinique
-MR Mauritania
-MS Montserrat
-MT Malta
-MU Mauritius
-MV Maldives
-MW Malawi
-MX Mexico
-MY Malaysia
-MZ Mozambique
-NA Namibia
-NC New Caledonia
-NE Niger
-NF Norfolk Island
-NG Nigeria
-NI Nicaragua
-NL Netherlands
-NO Norway
-NP Nepal
-NR Nauru
-NU Niue
-NZ New Zealand
-OM Oman
-PA Panama
-PE Peru
-PF French Polynesia
-PG Papua New Guinea
-PH Philippines
-PK Pakistan
-PL Poland
-PM St Pierre & Miquelon
-PN Pitcairn
-PR Puerto Rico
-PS Palestine
-PT Portugal
-PW Palau
-PY Paraguay
-QA Qatar
-RE Reunion
-RO Romania
-RS Serbia
-RU Russia
-RW Rwanda
-SA Saudi Arabia
-SB Solomon Islands
-SC Seychelles
-SD Sudan
-SE Sweden
-SG Singapore
-SH St Helena
-SI Slovenia
-SJ Svalbard & Jan Mayen
-SK Slovakia
-SL Sierra Leone
-SM San Marino
-SN Senegal
-SO Somalia
-SR Suriname
-ST Sao Tome & Principe
-SV El Salvador
-SY Syria
-SZ Swaziland
-TC Turks & Caicos Is
-TD Chad
-TF French Southern & Antarctic Lands
-TG Togo
-TH Thailand
-TJ Tajikistan
-TK Tokelau
-TL East Timor
-TM Turkmenistan
-TN Tunisia
-TO Tonga
-TR Turkey
-TT Trinidad & Tobago
-TV Tuvalu
-TW Taiwan
-TZ Tanzania
-UA Ukraine
-UG Uganda
-UM US minor outlying islands
-US United States
-UY Uruguay
-UZ Uzbekistan
-VA Vatican City
-VC St Vincent
-VE Venezuela
-VG Virgin Islands (UK)
-VI Virgin Islands (US)
-VN Vietnam
-VU Vanuatu
-WF Wallis & Futuna
-WS Samoa (western)
-YE Yemen
-YT Mayotte
-ZA South Africa
-ZM Zambia
-ZW Zimbabwe
diff --git a/tools/zoneinfo/tzdata2008h/leapseconds b/tools/zoneinfo/tzdata2008h/leapseconds
deleted file mode 100644
index a2f4f0b..0000000
--- a/tools/zoneinfo/tzdata2008h/leapseconds
+++ /dev/null
@@ -1,92 +0,0 @@
-# @(#)leapseconds 8.6
-
-# Allowance for leapseconds added to each timezone file.
-
-# The International Earth Rotation Service periodically uses leap seconds
-# to keep UTC to within 0.9 s of UT1
-# (which measures the true angular orientation of the earth in space); see
-# Terry J Quinn, The BIPM and the accurate measure of time,
-# Proc IEEE 79, 7 (July 1991), 894-905.
-# There were no leap seconds before 1972, because the official mechanism
-# accounting for the discrepancy between atomic time and the earth's rotation
-# did not exist until the early 1970s.
-
-# The correction (+ or -) is made at the given time, so lines
-# will typically look like:
-# Leap YEAR MON DAY 23:59:60 + R/S
-# or
-# Leap YEAR MON DAY 23:59:59 - R/S
-
-# If the leapsecond is Rolling (R) the given time is local time
-# If the leapsecond is Stationary (S) the given time is UTC
-
-# Leap YEAR MONTH DAY HH:MM:SS CORR R/S
-Leap 1972 Jun 30 23:59:60 + S
-Leap 1972 Dec 31 23:59:60 + S
-Leap 1973 Dec 31 23:59:60 + S
-Leap 1974 Dec 31 23:59:60 + S
-Leap 1975 Dec 31 23:59:60 + S
-Leap 1976 Dec 31 23:59:60 + S
-Leap 1977 Dec 31 23:59:60 + S
-Leap 1978 Dec 31 23:59:60 + S
-Leap 1979 Dec 31 23:59:60 + S
-Leap 1981 Jun 30 23:59:60 + S
-Leap 1982 Jun 30 23:59:60 + S
-Leap 1983 Jun 30 23:59:60 + S
-Leap 1985 Jun 30 23:59:60 + S
-Leap 1987 Dec 31 23:59:60 + S
-Leap 1989 Dec 31 23:59:60 + S
-Leap 1990 Dec 31 23:59:60 + S
-Leap 1992 Jun 30 23:59:60 + S
-Leap 1993 Jun 30 23:59:60 + S
-Leap 1994 Jun 30 23:59:60 + S
-Leap 1995 Dec 31 23:59:60 + S
-Leap 1997 Jun 30 23:59:60 + S
-Leap 1998 Dec 31 23:59:60 + S
-Leap 2005 Dec 31 23:59:60 + S
-Leap 2008 Dec 31 23:59:60 + S
-
-# INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS)
-#
-# SERVICE INTERNATIONAL DE LA ROTATION TERRESTRE ET DES SYSTEMES DE REFERENCE
-#
-# SERVICE DE LA ROTATION TERRESTRE
-# OBSERVATOIRE DE PARIS
-# 61, Av. de l'Observatoire 75014 PARIS (France)
-# Tel. : 33 (0) 1 40 51 22 26
-# FAX : 33 (0) 1 40 51 22 91
-# e-mail : services.iers@obspm.fr
-# http://hpiers.obspm.fr/eop-pc
-#
-# Paris, 4 July 2008
-#
-# Bulletin C 36
-#
-# To authorities responsible
-# for the measurement and
-# distribution of time
-#
-# UTC TIME STEP
-# on the 1st of January 2009
-#
-# A positive leap second will be introduced at the end of December 2008.
-# The sequence of dates of the UTC second markers will be:
-#
-# 2008 December 31, 23h 59m 59s
-# 2008 December 31, 23h 59m 60s
-# 2009 January 1, 0h 0m 0s
-#
-# The difference between UTC and the International Atomic Time TAI is:
-#
-# from 2006 January 1, 0h UTC, to 2009 January 1 0h UTC : UTC-TAI = - 33s
-# from 2009 January 1, 0h UTC, until further notice : UTC-TAI = - 34s
-#
-# Leap seconds can be introduced in UTC at the end of the months of December
-# or June, depending on the evolution of UT1-TAI. Bulletin C is mailed every
-# six months, either to announce a time step in UTC or to confirm that there
-# will be no time step at the next possible date.
-#
-# Daniel GAMBIS
-# Head
-# Earth Orientation Center of IERS
-# Observatoire de Paris, France
diff --git a/tools/zoneinfo/tzdata2008h/northamerica b/tools/zoneinfo/tzdata2008h/northamerica
deleted file mode 100644
index b8b333c..0000000
--- a/tools/zoneinfo/tzdata2008h/northamerica
+++ /dev/null
@@ -1,2651 +0,0 @@
-# @(#)northamerica 8.24
-# <pre>
-
-# also includes Central America and the Caribbean
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@elsie.nci.nih.gov for general use in the future).
-
-# From Paul Eggert (1999-03-22):
-# A reliable and entertaining source about time zones is
-# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
-
-###############################################################################
-
-# United States
-
-# From Paul Eggert (1999-03-31):
-# Howse writes (pp 121-125) that time zones were invented by
-# Professor Charles Ferdinand Dowd (1825-1904),
-# Principal of Temple Grove Ladies' Seminary (Saratoga Springs, NY).
-# His pamphlet ``A System of National Time for Railroads'' (1870)
-# was the result of his proposals at the Convention of Railroad Trunk Lines
-# in New York City (1869-10). His 1870 proposal was based on Washington, DC,
-# but in 1872-05 he moved the proposed origin to Greenwich.
-# His proposal was adopted by the railroads on 1883-11-18 at 12:00,
-# and the most of the country soon followed suit.
-
-# From Paul Eggert (2005-04-16):
-# That 1883 transition occurred at 12:00 new time, not at 12:00 old time.
-# See p 46 of David Prerau, Seize the daylight, Thunder's Mouth Press (2005).
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data in the US is
-# Thomas G. Shanks, The American Atlas (5th edition),
-# San Diego: ACS Publications, Inc. (1991).
-# Make sure you have the errata sheet; the book is somewhat useless without it.
-# It is the source for most of the pre-1991 US entries below.
-
-# From Paul Eggert (2001-03-06):
-# Daylight Saving Time was first suggested as a joke by Benjamin Franklin
-# in his whimsical essay ``An Economical Project for Diminishing the Cost
-# of Light'' published in the Journal de Paris (1784-04-26).
-# Not everyone is happy with the results:
-#
-# I don't really care how time is reckoned so long as there is some
-# agreement about it, but I object to being told that I am saving
-# daylight when my reason tells me that I am doing nothing of the kind.
-# I even object to the implication that I am wasting something
-# valuable if I stay in bed after the sun has risen. As an admirer
-# of moonlight I resent the bossy insistence of those who want to
-# reduce my time for enjoying it. At the back of the Daylight Saving
-# scheme I detect the bony, blue-fingered hand of Puritanism, eager
-# to push people into bed earlier, and get them up earlier, to make
-# them healthy, wealthy and wise in spite of themselves.
-#
-# -- Robertson Davies, The diary of Samuel Marchbanks,
-# Clarke, Irwin (1947), XIX, Sunday
-#
-# For more about the first ten years of DST in the United States, see
-# Robert Garland's <a href="http://www.clpgh.org/exhibit/dst.html">
-# Ten years of daylight saving from the Pittsburgh standpoint
-# (Carnegie Library of Pittsburgh, 1927)</a>.
-#
-# Shanks says that DST was called "War Time" in the US in 1918 and 1919.
-# However, DST was imposed by the Standard Time Act of 1918, which
-# was the first nationwide legal time standard, and apparently
-# time was just called "Standard Time" or "Daylight Saving Time".
-
-# From Arthur David Olson:
-# US Daylight Saving Time ended on the last Sunday of *October* in 1974.
-# See, for example, the front page of the Saturday, 1974-10-26
-# and Sunday, 1974-10-27 editions of the Washington Post.
-
-# From Arthur David Olson:
-# Before the Uniform Time Act of 1966 took effect in 1967, observance of
-# Daylight Saving Time in the US was by local option, except during wartime.
-
-# From Arthur David Olson (2000-09-25):
-# Last night I heard part of a rebroadcast of a 1945 Arch Oboler radio drama.
-# In the introduction, Oboler spoke of "Eastern Peace Time."
-# An AltaVista search turned up
-# <a href="http://rowayton.org/rhs/hstaug45.html">:
-# "When the time is announced over the radio now, it is 'Eastern Peace
-# Time' instead of the old familiar 'Eastern War Time.' Peace is wonderful."
-# </a> (August 1945) by way of confirmation.
-
-# From Joseph Gallant citing
-# George H. Douglas, _The Early Days of Radio Broadcasting_ (1987):
-# At 7 P.M. (Eastern War Time) [on 1945-08-14], the networks were set
-# to switch to London for Attlee's address, but the American people
-# never got to hear his speech live. According to one press account,
-# CBS' Bob Trout was first to announce the word of Japan's surrender,
-# but a few seconds later, NBC, ABC and Mutual also flashed the word
-# of surrender, all of whom interrupting the bells of Big Ben in
-# London which were to precede Mr. Attlee's speech.
-
-# From Paul Eggert (2003-02-09): It was Robert St John, not Bob Trout. From
-# Myrna Oliver's obituary of St John on page B16 of today's Los Angeles Times:
-#
-# ... a war-weary U.S. clung to radios, awaiting word of Japan's surrender.
-# Any announcement from Asia would reach St. John's New York newsroom on a
-# wire service teletype machine, which had prescribed signals for major news.
-# Associated Press, for example, would ring five bells before spewing out
-# typed copy of an important story, and 10 bells for news "of transcendental
-# importance."
-#
-# On Aug. 14, stalling while talking steadily into the NBC networks' open
-# microphone, St. John heard five bells and waited only to hear a sixth bell,
-# before announcing confidently: "Ladies and gentlemen, World War II is over.
-# The Japanese have agreed to our surrender terms."
-#
-# He had scored a 20-second scoop on other broadcasters.
-
-# From Arthur David Olson (2005-08-22):
-# Paul has been careful to use the "US" rules only in those locations
-# that are part of the United States; this reflects the real scope of
-# U.S. government action. So even though the "US" rules have changed
-# in the latest release, other countries won't be affected.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule US 1918 1919 - Mar lastSun 2:00 1:00 D
-Rule US 1918 1919 - Oct lastSun 2:00 0 S
-Rule US 1942 only - Feb 9 2:00 1:00 W # War
-Rule US 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule US 1945 only - Sep 30 2:00 0 S
-Rule US 1967 2006 - Oct lastSun 2:00 0 S
-Rule US 1967 1973 - Apr lastSun 2:00 1:00 D
-Rule US 1974 only - Jan 6 2:00 1:00 D
-Rule US 1975 only - Feb 23 2:00 1:00 D
-Rule US 1976 1986 - Apr lastSun 2:00 1:00 D
-Rule US 1987 2006 - Apr Sun>=1 2:00 1:00 D
-Rule US 2007 max - Mar Sun>=8 2:00 1:00 D
-Rule US 2007 max - Nov Sun>=1 2:00 0 S
-
-# From Arthur David Olson, 2005-12-19
-# We generate the files specified below to guard against old files with
-# obsolete information being left in the time zone binary directory.
-# We limit the list to names that have appeared in previous versions of
-# this time zone package.
-# We do these as separate Zones rather than as Links to avoid problems if
-# a particular place changes whether it observes DST.
-# We put these specifications here in the northamerica file both to
-# increase the chances that they'll actually get compiled and to
-# avoid the need to duplicate the US rules in another file.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone EST -5:00 - EST
-Zone MST -7:00 - MST
-Zone HST -10:00 - HST
-Zone EST5EDT -5:00 US E%sT
-Zone CST6CDT -6:00 US C%sT
-Zone MST7MDT -7:00 US M%sT
-Zone PST8PDT -8:00 US P%sT
-
-# From Bob Devine (1988-01-28):
-# ...Alaska (and Hawaii) had the timezone names changed in 1967.
-# old new
-# Pacific Standard Time(PST) -same-
-# Yukon Standard Time(YST) -same-
-# Central Alaska S.T. (CAT) Alaska-Hawaii St[an]dard Time (AHST)
-# Nome Standard Time (NT) Bering Standard Time (BST)
-#
-# ...Alaska's timezone lines were redrawn in 1983 to give only 2 tz.
-# The YST zone now covers nearly all of the state, AHST just part
-# of the Aleutian islands. No DST.
-
-# From Paul Eggert (1995-12-19):
-# The tables below use `NST', not `NT', for Nome Standard Time.
-# I invented `CAWT' for Central Alaska War Time.
-
-# From U. S. Naval Observatory (1989-01-19):
-# USA EASTERN 5 H BEHIND UTC NEW YORK, WASHINGTON
-# USA EASTERN 4 H BEHIND UTC APR 3 - OCT 30
-# USA CENTRAL 6 H BEHIND UTC CHICAGO, HOUSTON
-# USA CENTRAL 5 H BEHIND UTC APR 3 - OCT 30
-# USA MOUNTAIN 7 H BEHIND UTC DENVER
-# USA MOUNTAIN 6 H BEHIND UTC APR 3 - OCT 30
-# USA PACIFIC 8 H BEHIND UTC L.A., SAN FRANCISCO
-# USA PACIFIC 7 H BEHIND UTC APR 3 - OCT 30
-# USA ALASKA STD 9 H BEHIND UTC MOST OF ALASKA (AKST)
-# USA ALASKA STD 8 H BEHIND UTC APR 3 - OCT 30 (AKDT)
-# USA ALEUTIAN 10 H BEHIND UTC ISLANDS WEST OF 170W
-# USA - " - 9 H BEHIND UTC APR 3 - OCT 30
-# USA HAWAII 10 H BEHIND UTC
-# USA BERING 11 H BEHIND UTC SAMOA, MIDWAY
-
-# From Arthur David Olson (1989-01-21):
-# The above dates are for 1988.
-# Note the "AKST" and "AKDT" abbreviations, the claim that there's
-# no DST in Samoa, and the claim that there is DST in Alaska and the
-# Aleutians.
-
-# From Arthur David Olson (1988-02-13):
-# Legal standard time zone names, from United States Code (1982 Edition and
-# Supplement III), Title 15, Chapter 6, Section 260 and forward. First, names
-# up to 1967-04-01 (when most provisions of the Uniform Time Act of 1966
-# took effect), as explained in sections 263 and 261:
-# (none)
-# United States standard eastern time
-# United States standard mountain time
-# United States standard central time
-# United States standard Pacific time
-# (none)
-# United States standard Alaska time
-# (none)
-# Next, names from 1967-04-01 until 1983-11-30 (the date for
-# public law 98-181):
-# Atlantic standard time
-# eastern standard time
-# central standard time
-# mountain standard time
-# Pacific standard time
-# Yukon standard time
-# Alaska-Hawaii standard time
-# Bering standard time
-# And after 1983-11-30:
-# Atlantic standard time
-# eastern standard time
-# central standard time
-# mountain standard time
-# Pacific standard time
-# Alaska standard time
-# Hawaii-Aleutian standard time
-# Samoa standard time
-# The law doesn't give abbreviations.
-#
-# From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
-# Public law 106-564 (2000-12-23) introduced the abbreviation
-# "Chamorro Standard Time" for time in Guam and the Northern Marianas.
-# See the file "australasia".
-
-# From Arthur David Olson, 2005-08-09
-# The following was signed into law on 2005-08-08.
-#
-# H.R. 6, Energy Policy Act of 2005, SEC. 110. DAYLIGHT SAVINGS.
-# (a) Amendment- Section 3(a) of the Uniform Time Act of 1966 (15
-# U.S.C. 260a(a)) is amended--
-# (1) by striking `first Sunday of April' and inserting `second
-# Sunday of March'; and
-# (2) by striking `last Sunday of October' and inserting `first
-# Sunday of November'.
-# (b) Effective Date- Subsection (a) shall take effect 1 year after the
-# date of enactment of this Act or March 1, 2007, whichever is later.
-# (c) Report to Congress- Not later than 9 months after the effective
-# date stated in subsection (b), the Secretary shall report to Congress
-# on the impact of this section on energy consumption in the United
-# States.
-# (d) Right to Revert- Congress retains the right to revert the
-# Daylight Saving Time back to the 2005 time schedules once the
-# Department study is complete.
-
-# US eastern time, represented by New York
-
-# Connecticut, Delaware, District of Columbia, most of Florida,
-# Georgia, southeast Indiana (Dearborn and Ohio counties), eastern Kentucky
-# (except America/Kentucky/Louisville below), Maine, Maryland, Massachusetts,
-# New Hampshire, New Jersey, New York, North Carolina, Ohio,
-# Pennsylvania, Rhode Island, South Carolina, eastern Tennessee,
-# Vermont, Virginia, West Virginia
-
-# From Dave Cantor (2004-11-02):
-# Early this summer I had the occasion to visit the Mount Washington
-# Observatory weather station atop (of course!) Mount Washington [, NH]....
-# One of the staff members said that the station was on Eastern Standard Time
-# and didn't change their clocks for Daylight Saving ... so that their
-# reports will always have times which are 5 hours behind UTC.
-
-# From Paul Eggert (2005-08-26):
-# According to today's Huntsville Times
-# <http://www.al.com/news/huntsvilletimes/index.ssf?/base/news/1125047783228320.xml&coll=1>
-# a few towns on Alabama's "eastern border with Georgia, such as Phenix City
-# in Russell County, Lanett in Chambers County and some towns in Lee County,
-# set their watches and clocks on Eastern time." It quotes H.H. "Bubba"
-# Roberts, city administrator in Phenix City. as saying "We are in the Central
-# time zone, but we do go by the Eastern time zone because so many people work
-# in Columbus."
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule NYC 1920 only - Mar lastSun 2:00 1:00 D
-Rule NYC 1920 only - Oct lastSun 2:00 0 S
-Rule NYC 1921 1966 - Apr lastSun 2:00 1:00 D
-Rule NYC 1921 1954 - Sep lastSun 2:00 0 S
-Rule NYC 1955 1966 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/New_York -4:56:02 - LMT 1883 Nov 18 12:03:58
- -5:00 US E%sT 1920
- -5:00 NYC E%sT 1942
- -5:00 US E%sT 1946
- -5:00 NYC E%sT 1967
- -5:00 US E%sT
-
-# US central time, represented by Chicago
-
-# Alabama, Arkansas, Florida panhandle (Bay, Calhoun, Escambia,
-# Gulf, Holmes, Jackson, Okaloosa, Santa Rosa, Walton, and
-# Washington counties), Illinois, western Indiana
-# (Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer,
-# Vanderburgh, and Warrick counties), Iowa, most of Kansas, western
-# Kentucky, Louisiana, Minnesota, Mississippi, Missouri, eastern
-# Nebraska, eastern North Dakota, Oklahoma, eastern South Dakota,
-# western Tennessee, most of Texas, Wisconsin
-
-# From Larry M. Smith (2006-04-26) re Wisconsin:
-# http://www.legis.state.wi.us/statutes/Stat0175.pdf ...
-# is currently enforced at the 01:00 time of change. Because the local
-# "bar time" in the state corresponds to 02:00, a number of citations
-# are issued for the "sale of class 'B' alcohol after prohibited
-# hours" within the deviated hour of this change every year....
-#
-# From Douglas R. Bomberg (2007-03-12):
-# Wisconsin has enacted (nearly eleventh-hour) legislation to get WI
-# Statue 175 closer in synch with the US Congress' intent....
-# http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Chicago 1920 only - Jun 13 2:00 1:00 D
-Rule Chicago 1920 1921 - Oct lastSun 2:00 0 S
-Rule Chicago 1921 only - Mar lastSun 2:00 1:00 D
-Rule Chicago 1922 1966 - Apr lastSun 2:00 1:00 D
-Rule Chicago 1922 1954 - Sep lastSun 2:00 0 S
-Rule Chicago 1955 1966 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:09:24
- -6:00 US C%sT 1920
- -6:00 Chicago C%sT 1936 Mar 1 2:00
- -5:00 - EST 1936 Nov 15 2:00
- -6:00 Chicago C%sT 1942
- -6:00 US C%sT 1946
- -6:00 Chicago C%sT 1967
- -6:00 US C%sT
-# Oliver County, ND switched from mountain to central time on 1992-10-25.
-Zone America/North_Dakota/Center -6:45:12 - LMT 1883 Nov 18 12:14:48
- -7:00 US M%sT 1992 Oct 25 02:00
- -6:00 US C%sT
-# Morton County, ND, switched from mountain to central time on
-# 2003-10-26, except for the area around Mandan which was already central time.
-# See <http://dmses.dot.gov/docimages/p63/135818.pdf>.
-# Officially this switch also included part of Sioux County, and
-# Jones, Mellette, and Todd Counties in South Dakota;
-# but in practice these other counties were already observing central time.
-# See <http://www.epa.gov/fedrgstr/EPA-IMPACT/2003/October/Day-28/i27056.htm>.
-Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21
- -7:00 US M%sT 2003 Oct 26 02:00
- -6:00 US C%sT
-
-# US mountain time, represented by Denver
-#
-# Colorado, far western Kansas, Montana, western
-# Nebraska, Nevada border (Jackpot, Owyhee, and Mountain City),
-# New Mexico, southwestern North Dakota,
-# western South Dakota, far western Texas (El Paso County, Hudspeth County,
-# and Pine Springs and Nickel Creek in Culberson County), Utah, Wyoming
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Denver 1920 1921 - Mar lastSun 2:00 1:00 D
-Rule Denver 1920 only - Oct lastSun 2:00 0 S
-Rule Denver 1921 only - May 22 2:00 0 S
-Rule Denver 1965 1966 - Apr lastSun 2:00 1:00 D
-Rule Denver 1965 1966 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Denver -6:59:56 - LMT 1883 Nov 18 12:00:04
- -7:00 US M%sT 1920
- -7:00 Denver M%sT 1942
- -7:00 US M%sT 1946
- -7:00 Denver M%sT 1967
- -7:00 US M%sT
-
-# US Pacific time, represented by Los Angeles
-#
-# California, northern Idaho (Benewah, Bonner, Boundary, Clearwater,
-# Idaho, Kootenai, Latah, Lewis, Nez Perce, and Shoshone counties,
-# and the northern three-quarters of Idaho county),
-# most of Nevada, most of Oregon, and Washington
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule CA 1948 only - Mar 14 2:00 1:00 D
-Rule CA 1949 only - Jan 1 2:00 0 S
-Rule CA 1950 1966 - Apr lastSun 2:00 1:00 D
-Rule CA 1950 1961 - Sep lastSun 2:00 0 S
-Rule CA 1962 1966 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Los_Angeles -7:52:58 - LMT 1883 Nov 18 12:07:02
- -8:00 US P%sT 1946
- -8:00 CA P%sT 1967
- -8:00 US P%sT
-
-# Alaska
-# AK%sT is the modern abbreviation for -9:00 per USNO.
-#
-# From Paul Eggert (2001-05-30):
-# Howse writes that Alaska switched from the Julian to the Gregorian calendar,
-# and from east-of-GMT to west-of-GMT days, when the US bought it from Russia.
-# This was on 1867-10-18, a Friday; the previous day was 1867-10-06 Julian,
-# also a Friday. Include only the time zone part of this transition,
-# ignoring the switch from Julian to Gregorian, since we can't represent
-# the Julian calendar.
-#
-# As far as we know, none of the exact locations mentioned below were
-# permanently inhabited in 1867 by anyone using either calendar.
-# (Yakutat was colonized by the Russians in 1799, but the settlement
-# was destroyed in 1805 by a Yakutat-kon war party.) However, there
-# were nearby inhabitants in some cases and for our purposes perhaps
-# it's best to simply use the official transition.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Juneau 15:02:19 - LMT 1867 Oct 18
- -8:57:41 - LMT 1900 Aug 20 12:00
- -8:00 - PST 1942
- -8:00 US P%sT 1946
- -8:00 - PST 1969
- -8:00 US P%sT 1983 Oct 30 2:00
- -9:00 US Y%sT 1983 Nov 30
- -9:00 US AK%sT
-Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18
- -9:18:55 - LMT 1900 Aug 20 12:00
- -9:00 - YST 1942
- -9:00 US Y%sT 1946
- -9:00 - YST 1969
- -9:00 US Y%sT 1983 Nov 30
- -9:00 US AK%sT
-Zone America/Anchorage 14:00:24 - LMT 1867 Oct 18
- -9:59:36 - LMT 1900 Aug 20 12:00
- -10:00 - CAT 1942
- -10:00 US CAT/CAWT 1945 Aug 14 23:00u
- -10:00 US CAT/CAPT 1946 # Peace
- -10:00 - CAT 1967 Apr
- -10:00 - AHST 1969
- -10:00 US AH%sT 1983 Oct 30 2:00
- -9:00 US Y%sT 1983 Nov 30
- -9:00 US AK%sT
-Zone America/Nome 12:58:21 - LMT 1867 Oct 18
- -11:01:38 - LMT 1900 Aug 20 12:00
- -11:00 - NST 1942
- -11:00 US N%sT 1946
- -11:00 - NST 1967 Apr
- -11:00 - BST 1969
- -11:00 US B%sT 1983 Oct 30 2:00
- -9:00 US Y%sT 1983 Nov 30
- -9:00 US AK%sT
-Zone America/Adak 12:13:21 - LMT 1867 Oct 18
- -11:46:38 - LMT 1900 Aug 20 12:00
- -11:00 - NST 1942
- -11:00 US N%sT 1946
- -11:00 - NST 1967 Apr
- -11:00 - BST 1969
- -11:00 US B%sT 1983 Oct 30 2:00
- -10:00 US AH%sT 1983 Nov 30
- -10:00 US HA%sT
-# The following switches don't quite make our 1970 cutoff.
-#
-# Shanks writes that part of southwest Alaska (e.g. Aniak)
-# switched from -11:00 to -10:00 on 1968-09-22 at 02:00,
-# and another part (e.g. Akiak) made the same switch five weeks later.
-#
-# From David Flater (2004-11-09):
-# In e-mail, 2004-11-02, Ray Hudson, historian/liaison to the Unalaska
-# Historic Preservation Commission, provided this information, which
-# suggests that Unalaska deviated from statutory time from early 1967
-# possibly until 1983:
-#
-# Minutes of the Unalaska City Council Meeting, January 10, 1967:
-# "Except for St. Paul and Akutan, Unalaska is the only important
-# location not on Alaska Standard Time. The following resolution was
-# made by William Robinson and seconded by Henry Swanson: Be it
-# resolved that the City of Unalaska hereby goes to Alaska Standard
-# Time as of midnight Friday, January 13, 1967 (1 A.M. Saturday,
-# January 14, Alaska Standard Time.) This resolution was passed with
-# three votes for and one against."
-
-# Hawaii
-#
-# From Arthur David Olson:
-# And then there's Hawaii.
-# DST was observed for one day in 1933;
-# standard time was changed by half an hour in 1947;
-# it's always standard as of 1986.
-#
-# From Paul Eggert:
-# Shanks says the 1933 experiment lasted for three weeks. Go with Shanks.
-#
-Zone Pacific/Honolulu -10:31:26 - LMT 1900 Jan 1 12:00
- -10:30 - HST 1933 Apr 30 2:00
- -10:30 1:00 HDT 1933 May 21 2:00
- -10:30 US H%sT 1947 Jun 8 2:00
- -10:00 - HST
-
-# Now we turn to US areas that have diverged from the consensus since 1970.
-
-# Arizona mostly uses MST.
-
-# From Paul Eggert (2002-10-20):
-#
-# The information in the rest of this paragraph is derived from the
-# <a href="http://www.dlapr.lib.az.us/links/daylight.htm">
-# Daylight Saving Time web page (2002-01-23)</a> maintained by the
-# Arizona State Library, Archives and Public Records.
-# Between 1944-01-01 and 1944-04-01 the State of Arizona used standard
-# time, but by federal law railroads, airlines, bus lines, military
-# personnel, and some engaged in interstate commerce continued to
-# observe war (i.e., daylight saving) time. The 1944-03-17 Phoenix
-# Gazette says that was the date the law changed, and that 04-01 was
-# the date the state's clocks would change. In 1945 the State of
-# Arizona used standard time all year, again with exceptions only as
-# mandated by federal law. Arizona observed DST in 1967, but Arizona
-# Laws 1968, ch. 183 (effective 1968-03-21) repealed DST.
-#
-# Shanks says the 1944 experiment came to an end on 1944-03-17.
-# Go with the Arizona State Library instead.
-
-Zone America/Phoenix -7:28:18 - LMT 1883 Nov 18 11:31:42
- -7:00 US M%sT 1944 Jan 1 00:01
- -7:00 - MST 1944 Apr 1 00:01
- -7:00 US M%sT 1944 Oct 1 00:01
- -7:00 - MST 1967
- -7:00 US M%sT 1968 Mar 21
- -7:00 - MST
-# From Arthur David Olson (1988-02-13):
-# A writer from the Inter Tribal Council of Arizona, Inc.,
-# notes in private correspondence dated 1987-12-28 that "Presently, only the
-# Navajo Nation participates in the Daylight Saving Time policy, due to its
-# large size and location in three states." (The "only" means that other
-# tribal nations don't use DST.)
-
-Link America/Denver America/Shiprock
-
-# Southern Idaho (Ada, Adams, Bannock, Bear Lake, Bingham, Blaine,
-# Boise, Bonneville, Butte, Camas, Canyon, Caribou, Cassia, Clark,
-# Custer, Elmore, Franklin, Fremont, Gem, Gooding, Jefferson, Jerome,
-# Lemhi, Lincoln, Madison, Minidoka, Oneida, Owyhee, Payette, Power,
-# Teton, Twin Falls, Valley, Washington counties, and the southern
-# quarter of Idaho county) and eastern Oregon (most of Malheur County)
-# switched four weeks late in 1974.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11
- -8:00 US P%sT 1923 May 13 2:00
- -7:00 US M%sT 1974
- -7:00 - MST 1974 Feb 3 2:00
- -7:00 US M%sT
-
-# Indiana
-#
-# For a map of Indiana's time zone regions, see:
-# <a href="http://www.mccsc.edu/time.html">
-# What time is it in Indiana?
-# </a> (2006-03-01)
-#
-# From Paul Eggert (2007-08-17):
-# Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
-# with the following exceptions:
-#
-# - Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer,
-# Vandenburgh, and Warrick counties have been like America/Chicago.
-#
-# - Dearborn and Ohio counties have been like America/New_York.
-#
-# - Clark, Floyd, and Harrison counties have been like
-# America/Kentucky/Louisville.
-#
-# - Crawford, Daviess, Dubois, Knox, Martin, Perry, Pike, Pulaski, Starke,
-# and Switzerland counties have their own time zone histories as noted below.
-#
-# Shanks partitioned Indiana into 345 regions, each with its own time history,
-# and wrote ``Even newspaper reports present contradictory information.''
-# Those Hoosiers! Such a flighty and changeable people!
-# Fortunately, most of the complexity occurred before our cutoff date of 1970.
-#
-# Other than Indianapolis, the Indiana place names are so nondescript
-# that they would be ambiguous if we left them at the `America' level.
-# So we reluctantly put them all in a subdirectory `America/Indiana'.
-
-# From Paul Eggert (2005-08-16):
-# http://www.mccsc.edu/time.html says that Indiana will use DST starting 2006.
-
-# From Nathan Stratton Treadway (2006-03-30):
-# http://www.dot.gov/affairs/dot0406.htm [3705 B]
-# From Deborah Goldsmith (2006-01-18):
-# http://dmses.dot.gov/docimages/pdf95/382329_web.pdf [2.9 MB]
-# From Paul Eggert (2006-01-20):
-# It says "DOT is relocating the time zone boundary in Indiana to move Starke,
-# Pulaski, Knox, Daviess, Martin, Pike, Dubois, and Perry Counties from the
-# Eastern Time Zone to the Central Time Zone.... The effective date of
-# this rule is 2:OO a.m. EST Sunday, April 2, 2006, which is the
-# changeover date from standard time to Daylight Saving Time."
-# Strictly speaking, this means the affected counties will change their
-# clocks twice that night, but this obviously is in error. The intent
-# is that 01:59:59 EST be followed by 02:00:00 CDT.
-
-# From Gwillim Law (2007-02-10):
-# The Associated Press has been reporting that Pulaski County, Indiana is
-# going to switch from Central to Eastern Time on March 11, 2007....
-# http://www.indystar.com/apps/pbcs.dll/article?AID=/20070207/LOCAL190108/702070524/0/LOCAL
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Indianapolis 1941 only - Jun 22 2:00 1:00 D
-Rule Indianapolis 1941 1954 - Sep lastSun 2:00 0 S
-Rule Indianapolis 1946 1954 - Apr lastSun 2:00 1:00 D
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22
- -6:00 US C%sT 1920
- -6:00 Indianapolis C%sT 1942
- -6:00 US C%sT 1946
- -6:00 Indianapolis C%sT 1955 Apr 24 2:00
- -5:00 - EST 1957 Sep 29 2:00
- -6:00 - CST 1958 Apr 27 2:00
- -5:00 - EST 1969
- -5:00 US E%sT 1971
- -5:00 - EST 2006
- -5:00 US E%sT
-#
-# Eastern Crawford County, Indiana, left its clocks alone in 1974,
-# as well as from 1976 through 2005.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Marengo 1951 only - Apr lastSun 2:00 1:00 D
-Rule Marengo 1951 only - Sep lastSun 2:00 0 S
-Rule Marengo 1954 1960 - Apr lastSun 2:00 1:00 D
-Rule Marengo 1954 1960 - Sep lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Marengo -5:45:23 - LMT 1883 Nov 18 12:14:37
- -6:00 US C%sT 1951
- -6:00 Marengo C%sT 1961 Apr 30 2:00
- -5:00 - EST 1969
- -5:00 US E%sT 1974 Jan 6 2:00
- -6:00 1:00 CDT 1974 Oct 27 2:00
- -5:00 US E%sT 1976
- -5:00 - EST 2006
- -5:00 US E%sT
-#
-# Daviess, Dubois, Knox, and Martin Counties, Indiana,
-# switched from eastern to central time in April 2006, then switched back
-# in November 2007.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Vincennes 1946 only - Apr lastSun 2:00 1:00 D
-Rule Vincennes 1946 only - Sep lastSun 2:00 0 S
-Rule Vincennes 1953 1954 - Apr lastSun 2:00 1:00 D
-Rule Vincennes 1953 1959 - Sep lastSun 2:00 0 S
-Rule Vincennes 1955 only - May 1 0:00 1:00 D
-Rule Vincennes 1956 1963 - Apr lastSun 2:00 1:00 D
-Rule Vincennes 1960 only - Oct lastSun 2:00 0 S
-Rule Vincennes 1961 only - Sep lastSun 2:00 0 S
-Rule Vincennes 1962 1963 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Vincennes -5:50:07 - LMT 1883 Nov 18 12:09:53
- -6:00 US C%sT 1946
- -6:00 Vincennes C%sT 1964 Apr 26 2:00
- -5:00 - EST 1969
- -5:00 US E%sT 1971
- -5:00 - EST 2006 Apr 2 2:00
- -6:00 US C%sT 2007 Nov 4 2:00
- -5:00 US E%sT
-#
-# Perry County, Indiana, switched from eastern to central time in April 2006.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Perry 1946 only - Apr lastSun 2:00 1:00 D
-Rule Perry 1946 only - Sep lastSun 2:00 0 S
-Rule Perry 1953 1954 - Apr lastSun 2:00 1:00 D
-Rule Perry 1953 1959 - Sep lastSun 2:00 0 S
-Rule Perry 1955 only - May 1 0:00 1:00 D
-Rule Perry 1956 1963 - Apr lastSun 2:00 1:00 D
-Rule Perry 1960 only - Oct lastSun 2:00 0 S
-Rule Perry 1961 only - Sep lastSun 2:00 0 S
-Rule Perry 1962 1963 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Tell_City -5:47:03 - LMT 1883 Nov 18 12:12:57
- -6:00 US C%sT 1946
- -6:00 Perry C%sT 1964 Apr 26 2:00
- -5:00 - EST 1969
- -5:00 US E%sT 1971
- -5:00 - EST 2006 Apr 2 2:00
- -6:00 US C%sT
-#
-# Pike County, Indiana moved from central to eastern time in 1977,
-# then switched back in 2006, then switched back again in 2007.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Pike 1955 only - May 1 0:00 1:00 D
-Rule Pike 1955 1960 - Sep lastSun 2:00 0 S
-Rule Pike 1956 1964 - Apr lastSun 2:00 1:00 D
-Rule Pike 1961 1964 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Petersburg -5:49:07 - LMT 1883 Nov 18 12:10:53
- -6:00 US C%sT 1955
- -6:00 Pike C%sT 1965 Apr 25 2:00
- -5:00 - EST 1966 Oct 30 2:00
- -6:00 US C%sT 1977 Oct 30 2:00
- -5:00 - EST 2006 Apr 2 2:00
- -6:00 US C%sT 2007 Nov 4 2:00
- -5:00 US E%sT
-#
-# Starke County, Indiana moved from central to eastern time in 1991,
-# then switched back in 2006.
-# From Arthur David Olson (1991-10-28):
-# An article on page A3 of the Sunday, 1991-10-27 Washington Post
-# notes that Starke County switched from Central time to Eastern time as of
-# 1991-10-27.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Starke 1947 1961 - Apr lastSun 2:00 1:00 D
-Rule Starke 1947 1954 - Sep lastSun 2:00 0 S
-Rule Starke 1955 1956 - Oct lastSun 2:00 0 S
-Rule Starke 1957 1958 - Sep lastSun 2:00 0 S
-Rule Starke 1959 1961 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Knox -5:46:30 - LMT 1883 Nov 18 12:13:30
- -6:00 US C%sT 1947
- -6:00 Starke C%sT 1962 Apr 29 2:00
- -5:00 - EST 1963 Oct 27 2:00
- -6:00 US C%sT 1991 Oct 27 2:00
- -5:00 - EST 2006 Apr 2 2:00
- -6:00 US C%sT
-#
-# Pulaski County, Indiana, switched from eastern to central time in
-# April 2006 and then switched back in March 2007.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Pulaski 1946 1960 - Apr lastSun 2:00 1:00 D
-Rule Pulaski 1946 1954 - Sep lastSun 2:00 0 S
-Rule Pulaski 1955 1956 - Oct lastSun 2:00 0 S
-Rule Pulaski 1957 1960 - Sep lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Winamac -5:46:25 - LMT 1883 Nov 18 12:13:35
- -6:00 US C%sT 1946
- -6:00 Pulaski C%sT 1961 Apr 30 2:00
- -5:00 - EST 1969
- -5:00 US E%sT 1971
- -5:00 - EST 2006 Apr 2 2:00
- -6:00 US C%sT 2007 Mar 11 2:00
- -5:00 US E%sT
-#
-# Switzerland County, Indiana, did not observe DST from 1973 through 2005.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Indiana/Vevay -5:40:16 - LMT 1883 Nov 18 12:19:44
- -6:00 US C%sT 1954 Apr 25 2:00
- -5:00 - EST 1969
- -5:00 US E%sT 1973
- -5:00 - EST 2006
- -5:00 US E%sT
-
-# Part of Kentucky left its clocks alone in 1974.
-# This also includes Clark, Floyd, and Harrison counties in Indiana.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Louisville 1921 only - May 1 2:00 1:00 D
-Rule Louisville 1921 only - Sep 1 2:00 0 S
-Rule Louisville 1941 1961 - Apr lastSun 2:00 1:00 D
-Rule Louisville 1941 only - Sep lastSun 2:00 0 S
-Rule Louisville 1946 only - Jun 2 2:00 0 S
-Rule Louisville 1950 1955 - Sep lastSun 2:00 0 S
-Rule Louisville 1956 1960 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Kentucky/Louisville -5:43:02 - LMT 1883 Nov 18 12:16:58
- -6:00 US C%sT 1921
- -6:00 Louisville C%sT 1942
- -6:00 US C%sT 1946
- -6:00 Louisville C%sT 1961 Jul 23 2:00
- -5:00 - EST 1968
- -5:00 US E%sT 1974 Jan 6 2:00
- -6:00 1:00 CDT 1974 Oct 27 2:00
- -5:00 US E%sT
-#
-# Wayne County, Kentucky
-#
-# From
-# <a href="http://www.lake-cumberland.com/life/archive/news990129time.shtml">
-# Lake Cumberland LIFE
-# </a> (1999-01-29) via WKYM-101.7:
-# Clinton County has joined Wayne County in asking the DoT to change from
-# the Central to the Eastern time zone.... The Wayne County government made
-# the same request in December. And while Russell County officials have not
-# taken action, the majority of respondents to a poll conducted there in
-# August indicated they would like to change to "fast time" also.
-# The three Lake Cumberland counties are the farthest east of any U.S.
-# location in the Central time zone.
-#
-# From Rich Wales (2000-08-29):
-# After prolonged debate, and despite continuing deep differences of opinion,
-# Wayne County (central Kentucky) is switching from Central (-0600) to Eastern
-# (-0500) time. They won't "fall back" this year. See Sara Shipley,
-# The difference an hour makes, Nando Times (2000-08-29 15:33 -0400).
-#
-# From Paul Eggert (2001-07-16):
-# The final rule was published in the
-# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22">
-# Federal Register 65, 160 (2000-08-17), page 50154-50158.
-# </a>
-#
-Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36
- -6:00 US C%sT 1946
- -6:00 - CST 1968
- -6:00 US C%sT 2000 Oct 29 2:00
- -5:00 US E%sT
-
-
-# From Rives McDow (2000-08-30):
-# Here ... are all the changes in the US since 1985.
-# Kearny County, KS (put all of county on central;
-# previously split between MST and CST) ... 1990-10
-# Starke County, IN (from CST to EST) ... 1991-10
-# Oliver County, ND (from MST to CST) ... 1992-10
-# West Wendover, NV (from PST TO MST) ... 1999-10
-# Wayne County, KY (from CST to EST) ... 2000-10
-#
-# From Paul Eggert (2001-07-17):
-# We don't know where the line used to be within Kearny County, KS,
-# so omit that change for now.
-# See America/Indiana/Knox for the Starke County, IN change.
-# See America/North_Dakota/Center for the Oliver County, ND change.
-# West Wendover, NV officially switched from Pacific to mountain time on
-# 1999-10-31. See the
-# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15">
-# Federal Register 64, 203 (1999-10-21), page 56705-56707.
-# </a>
-# However, the Federal Register says that West Wendover already operated
-# on mountain time, and the rule merely made this official;
-# hence a separate tz entry is not needed.
-
-# Michigan
-#
-# From Bob Devine (1988-01-28):
-# Michigan didn't observe DST from 1968 to 1973.
-#
-# From Paul Eggert (1999-03-31):
-# Shanks writes that Michigan started using standard time on 1885-09-18,
-# but Howse writes (pp 124-125, referring to Popular Astronomy, 1901-01)
-# that Detroit kept
-#
-# local time until 1900 when the City Council decreed that clocks should
-# be put back twenty-eight minutes to Central Standard Time. Half the
-# city obeyed, half refused. After considerable debate, the decision
-# was rescinded and the city reverted to Sun time. A derisive offer to
-# erect a sundial in front of the city hall was referred to the
-# Committee on Sewers. Then, in 1905, Central time was adopted
-# by city vote.
-#
-# This story is too entertaining to be false, so go with Howse over Shanks.
-#
-# From Paul Eggert (2001-03-06):
-# Garland (1927) writes ``Cleveland and Detroit advanced their clocks
-# one hour in 1914.'' This change is not in Shanks. We have no more
-# info, so omit this for now.
-#
-# Most of Michigan observed DST from 1973 on, but was a bit late in 1975.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Detroit 1948 only - Apr lastSun 2:00 1:00 D
-Rule Detroit 1948 only - Sep lastSun 2:00 0 S
-Rule Detroit 1967 only - Jun 14 2:00 1:00 D
-Rule Detroit 1967 only - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Detroit -5:32:11 - LMT 1905
- -6:00 - CST 1915 May 15 2:00
- -5:00 - EST 1942
- -5:00 US E%sT 1946
- -5:00 Detroit E%sT 1973
- -5:00 US E%sT 1975
- -5:00 - EST 1975 Apr 27 2:00
- -5:00 US E%sT
-#
-# Dickinson, Gogebic, Iron, and Menominee Counties, Michigan,
-# switched from EST to CST/CDT in 1973.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
-Rule Menominee 1946 only - Apr lastSun 2:00 1:00 D
-Rule Menominee 1946 only - Sep lastSun 2:00 0 S
-Rule Menominee 1966 only - Apr lastSun 2:00 1:00 D
-Rule Menominee 1966 only - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00
- -6:00 US C%sT 1946
- -6:00 Menominee C%sT 1969 Apr 27 2:00
- -5:00 - EST 1973 Apr 29 2:00
- -6:00 US C%sT
-
-# Navassa
-# administered by the US Fish and Wildlife Service
-# claimed by US under the provisions of the 1856 Guano Islands Act
-# also claimed by Haiti
-# occupied 1857/1900 by the Navassa Phosphate Co
-# US lighthouse 1917/1996-09
-# currently uninhabited
-# see Mark Fineman, ``An Isle Rich in Guano and Discord'',
-# _Los Angeles Times_ (1998-11-10), A1, A10; it cites
-# Jimmy Skaggs, _The Great Guano Rush_ (1994).
-
-################################################################################
-
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually. Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1990, and IATA SSIM is the source for entries afterwards.
-#
-# Other sources occasionally used include:
-#
-# Edward W. Whitman, World Time Differences,
-# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated),
-# which I found in the UCLA library.
-#
-# <a href="http://www.pettswoodvillage.co.uk/Daylight_Savings_William_Willett.pdf">
-# William Willett, The Waste of Daylight, 19th edition
-# </a> (1914-03)
-#
-# See the `europe' file for Greenland.
-
-# Canada
-
-# From Alain LaBont<e'> (1994-11-14):
-# I post here the time zone abbreviations standardized in Canada
-# for both English and French in the CAN/CSA-Z234.4-89 standard....
-#
-# UTC Standard time Daylight savings time
-# offset French English French English
-# -2:30 - - HAT NDT
-# -3 - - HAA ADT
-# -3:30 HNT NST - -
-# -4 HNA AST HAE EDT
-# -5 HNE EST HAC CDT
-# -6 HNC CST HAR MDT
-# -7 HNR MST HAP PDT
-# -8 HNP PST HAY YDT
-# -9 HNY YST - -
-#
-# HN: Heure Normale ST: Standard Time
-# HA: Heure Avanc<e'>e DT: Daylight saving Time
-#
-# A: de l'Atlantique Atlantic
-# C: du Centre Central
-# E: de l'Est Eastern
-# M: Mountain
-# N: Newfoundland
-# P: du Pacifique Pacific
-# R: des Rocheuses
-# T: de Terre-Neuve
-# Y: du Yukon Yukon
-#
-# From Paul Eggert (1994-11-22):
-# Alas, this sort of thing must be handled by localization software.
-
-# Unless otherwise specified, the data for Canada are all from Shanks
-# & Pottenger.
-
-# From Chris Walton (2006-04-01, 2006-04-25, 2006-06-26, 2007-01-31,
-# 2007-03-01):
-# The British Columbia government announced yesterday that it will
-# adjust daylight savings next year to align with changes in the
-# U.S. and the rest of Canada....
-# http://www2.news.gov.bc.ca/news_releases_2005-2009/2006AG0014-000330.htm
-# ...
-# Nova Scotia
-# Daylight saving time will be extended by four weeks starting in 2007....
-# http://www.gov.ns.ca/just/regulations/rg2/2006/ma1206.pdf
-#
-# [For New Brunswick] the new legislation dictates that the time change is to
-# be done at 02:00 instead of 00:01.
-# http://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
-# ...
-# Manitoba has traditionally changed the clock every fall at 03:00.
-# As of 2006, the transition is to take place one hour earlier at 02:00.
-# http://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
-# ...
-# [Alberta, Ontario, Quebec] will follow US rules.
-# http://www.qp.gov.ab.ca/documents/spring/CH03_06.CFM
-# http://www.e-laws.gov.on.ca/DBLaws/Source/Regs/English/2006/R06111_e.htm
-# http://www2.publicationsduquebec.gouv.qc.ca/dynamicSearch/telecharge.php?type=5&file=2006C39A.PDF
-# ...
-# P.E.I. will follow US rules....
-# http://www.assembly.pe.ca/bills/pdf_chapter/62/3/chapter-41.pdf
-# ...
-# Province of Newfoundland and Labrador....
-# http://www.hoa.gov.nl.ca/hoa/bills/Bill0634.htm
-# ...
-# Yukon
-# http://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
-# ...
-# N.W.T. will follow US rules. Whoever maintains the government web site
-# does not seem to believe in bookmarks. To see the news release, click the
-# following link and search for "Daylight Savings Time Change". Press the
-# "Daylight Savings Time Change" link; it will fire off a popup using
-# JavaScript.
-# http://www.exec.gov.nt.ca/currentnews/currentPR.asp?mode=archive
-# ...
-# Nunavut
-# An amendment to the Interpretation Act was registered on February 19/2007....
-# http://action.attavik.ca/home/justice-gn/attach/2007/gaz02part2.pdf
-
-# From Paul Eggert (2006-04-25):
-# H. David Matthews and Mary Vincent's map
-# <a href="http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp">
-# "It's about TIME", _Canadian Geographic_ (September-October 1998)
-# </a> contains detailed boundaries for regions observing nonstandard
-# time and daylight saving time arrangements in Canada circa 1998.
-#
-# INMS, the Institute for National Measurement Standards in Ottawa, has <a
-# href="http://inms-ienm.nrc-cnrc.gc.ca/en/time_services/daylight_saving_e.php">
-# information about standard and daylight saving time zones in Canada.
-# </a> (updated periodically).
-# Its unofficial information is often taken from Matthews and Vincent.
-
-# From Paul Eggert (2006-06-27):
-# For now, assume all of DST-observing Canada will fall into line with the
-# new US DST rules,
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Canada 1918 only - Apr 14 2:00 1:00 D
-Rule Canada 1918 only - Oct 31 2:00 0 S
-Rule Canada 1942 only - Feb 9 2:00 1:00 W # War
-Rule Canada 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule Canada 1945 only - Sep 30 2:00 0 S
-Rule Canada 1974 1986 - Apr lastSun 2:00 1:00 D
-Rule Canada 1974 2006 - Oct lastSun 2:00 0 S
-Rule Canada 1987 2006 - Apr Sun>=1 2:00 1:00 D
-Rule Canada 2007 max - Mar Sun>=8 2:00 1:00 D
-Rule Canada 2007 max - Nov Sun>=1 2:00 0 S
-
-
-# Newfoundland and Labrador
-
-# From Paul Eggert (2000-10-02):
-# Matthews and Vincent (1998) write that Labrador should use NST/NDT,
-# but the only part of Labrador that follows the rules is the
-# southeast corner, including Port Hope Simpson and Mary's Harbour,
-# but excluding, say, Black Tickle.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule StJohns 1917 only - Apr 8 2:00 1:00 D
-Rule StJohns 1917 only - Sep 17 2:00 0 S
-# Whitman gives 1919 Apr 5 and 1920 Apr 5; go with Shanks & Pottenger.
-Rule StJohns 1919 only - May 5 23:00 1:00 D
-Rule StJohns 1919 only - Aug 12 23:00 0 S
-# For 1931-1935 Whitman gives Apr same date; go with Shanks & Pottenger.
-Rule StJohns 1920 1935 - May Sun>=1 23:00 1:00 D
-Rule StJohns 1920 1935 - Oct lastSun 23:00 0 S
-# For 1936-1941 Whitman gives May Sun>=8 and Oct Sun>=1; go with Shanks &
-# Pottenger.
-Rule StJohns 1936 1941 - May Mon>=9 0:00 1:00 D
-Rule StJohns 1936 1941 - Oct Mon>=2 0:00 0 S
-# Whitman gives the following transitions:
-# 1942 03-01/12-31, 1943 05-30/09-05, 1944 07-10/09-02, 1945 01-01/10-07
-# but go with Shanks & Pottenger and assume they used Canadian rules.
-# For 1946-9 Whitman gives May 5,4,9,1 - Oct 1,5,3,2, and for 1950 he gives
-# Apr 30 - Sep 24; go with Shanks & Pottenger.
-Rule StJohns 1946 1950 - May Sun>=8 2:00 1:00 D
-Rule StJohns 1946 1950 - Oct Sun>=2 2:00 0 S
-Rule StJohns 1951 1986 - Apr lastSun 2:00 1:00 D
-Rule StJohns 1951 1959 - Sep lastSun 2:00 0 S
-Rule StJohns 1960 1986 - Oct lastSun 2:00 0 S
-# From Paul Eggert (2000-10-02):
-# INMS (2000-09-12) says that, since 1988 at least, Newfoundland switches
-# at 00:01 local time. For now, assume it started in 1987.
-Rule StJohns 1987 only - Apr Sun>=1 0:01 1:00 D
-Rule StJohns 1987 2006 - Oct lastSun 0:01 0 S
-Rule StJohns 1988 only - Apr Sun>=1 0:01 2:00 DD
-Rule StJohns 1989 2006 - Apr Sun>=1 0:01 1:00 D
-Rule StJohns 2007 max - Mar Sun>=8 0:01 1:00 D
-Rule StJohns 2007 max - Nov Sun>=1 0:01 0 S
-#
-# St John's has an apostrophe, but Posix file names can't have apostrophes.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/St_Johns -3:30:52 - LMT 1884
- -3:30:52 StJohns N%sT 1918
- -3:30:52 Canada N%sT 1919
- -3:30:52 StJohns N%sT 1935 Mar 30
- -3:30 StJohns N%sT 1942 May 11
- -3:30 Canada N%sT 1946
- -3:30 StJohns N%sT
-
-# most of east Labrador
-
-# The name `Happy Valley-Goose Bay' is too long; use `Goose Bay'.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Goose_Bay -4:01:40 - LMT 1884 # Happy Valley-Goose Bay
- -3:30:52 - NST 1918
- -3:30:52 Canada N%sT 1919
- -3:30:52 - NST 1935 Mar 30
- -3:30 - NST 1936
- -3:30 StJohns N%sT 1942 May 11
- -3:30 Canada N%sT 1946
- -3:30 StJohns N%sT 1966 Mar 15 2:00
- -4:00 StJohns A%sT
-
-
-# west Labrador, Nova Scotia, Prince Edward I
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that since 1970 most of this region has been like
-# Halifax. Many locales did not observe peacetime DST until 1972;
-# Glace Bay, NS is the largest that we know of.
-# Shanks & Pottenger also write that Liverpool, NS was the only town
-# in Canada to observe DST in 1971 but not 1970; for now we'll assume
-# this is a typo.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Halifax 1916 only - Apr 1 0:00 1:00 D
-Rule Halifax 1916 only - Oct 1 0:00 0 S
-Rule Halifax 1920 only - May 9 0:00 1:00 D
-Rule Halifax 1920 only - Aug 29 0:00 0 S
-Rule Halifax 1921 only - May 6 0:00 1:00 D
-Rule Halifax 1921 1922 - Sep 5 0:00 0 S
-Rule Halifax 1922 only - Apr 30 0:00 1:00 D
-Rule Halifax 1923 1925 - May Sun>=1 0:00 1:00 D
-Rule Halifax 1923 only - Sep 4 0:00 0 S
-Rule Halifax 1924 only - Sep 15 0:00 0 S
-Rule Halifax 1925 only - Sep 28 0:00 0 S
-Rule Halifax 1926 only - May 16 0:00 1:00 D
-Rule Halifax 1926 only - Sep 13 0:00 0 S
-Rule Halifax 1927 only - May 1 0:00 1:00 D
-Rule Halifax 1927 only - Sep 26 0:00 0 S
-Rule Halifax 1928 1931 - May Sun>=8 0:00 1:00 D
-Rule Halifax 1928 only - Sep 9 0:00 0 S
-Rule Halifax 1929 only - Sep 3 0:00 0 S
-Rule Halifax 1930 only - Sep 15 0:00 0 S
-Rule Halifax 1931 1932 - Sep Mon>=24 0:00 0 S
-Rule Halifax 1932 only - May 1 0:00 1:00 D
-Rule Halifax 1933 only - Apr 30 0:00 1:00 D
-Rule Halifax 1933 only - Oct 2 0:00 0 S
-Rule Halifax 1934 only - May 20 0:00 1:00 D
-Rule Halifax 1934 only - Sep 16 0:00 0 S
-Rule Halifax 1935 only - Jun 2 0:00 1:00 D
-Rule Halifax 1935 only - Sep 30 0:00 0 S
-Rule Halifax 1936 only - Jun 1 0:00 1:00 D
-Rule Halifax 1936 only - Sep 14 0:00 0 S
-Rule Halifax 1937 1938 - May Sun>=1 0:00 1:00 D
-Rule Halifax 1937 1941 - Sep Mon>=24 0:00 0 S
-Rule Halifax 1939 only - May 28 0:00 1:00 D
-Rule Halifax 1940 1941 - May Sun>=1 0:00 1:00 D
-Rule Halifax 1946 1949 - Apr lastSun 2:00 1:00 D
-Rule Halifax 1946 1949 - Sep lastSun 2:00 0 S
-Rule Halifax 1951 1954 - Apr lastSun 2:00 1:00 D
-Rule Halifax 1951 1954 - Sep lastSun 2:00 0 S
-Rule Halifax 1956 1959 - Apr lastSun 2:00 1:00 D
-Rule Halifax 1956 1959 - Sep lastSun 2:00 0 S
-Rule Halifax 1962 1973 - Apr lastSun 2:00 1:00 D
-Rule Halifax 1962 1973 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Halifax -4:14:24 - LMT 1902 Jun 15
- -4:00 Halifax A%sT 1918
- -4:00 Canada A%sT 1919
- -4:00 Halifax A%sT 1942 Feb 9 2:00s
- -4:00 Canada A%sT 1946
- -4:00 Halifax A%sT 1974
- -4:00 Canada A%sT
-Zone America/Glace_Bay -3:59:48 - LMT 1902 Jun 15
- -4:00 Canada A%sT 1953
- -4:00 Halifax A%sT 1954
- -4:00 - AST 1972
- -4:00 Halifax A%sT 1974
- -4:00 Canada A%sT
-
-# New Brunswick
-
-# From Paul Eggert (2007-01-31):
-# The Time Definition Act <http://www.gnb.ca/0062/PDF-acts/t-06.pdf>
-# says they changed at 00:01 through 2006, and
-# <http://www.canlii.org/nb/laws/sta/t-6/20030127/whole.html> makes it
-# clear that this was the case since at least 1993.
-# For now, assume it started in 1993.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Moncton 1933 1935 - Jun Sun>=8 1:00 1:00 D
-Rule Moncton 1933 1935 - Sep Sun>=8 1:00 0 S
-Rule Moncton 1936 1938 - Jun Sun>=1 1:00 1:00 D
-Rule Moncton 1936 1938 - Sep Sun>=1 1:00 0 S
-Rule Moncton 1939 only - May 27 1:00 1:00 D
-Rule Moncton 1939 1941 - Sep Sat>=21 1:00 0 S
-Rule Moncton 1940 only - May 19 1:00 1:00 D
-Rule Moncton 1941 only - May 4 1:00 1:00 D
-Rule Moncton 1946 1972 - Apr lastSun 2:00 1:00 D
-Rule Moncton 1946 1956 - Sep lastSun 2:00 0 S
-Rule Moncton 1957 1972 - Oct lastSun 2:00 0 S
-Rule Moncton 1993 2006 - Apr Sun>=1 0:01 1:00 D
-Rule Moncton 1993 2006 - Oct lastSun 0:01 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Moncton -4:19:08 - LMT 1883 Dec 9
- -5:00 - EST 1902 Jun 15
- -4:00 Canada A%sT 1933
- -4:00 Moncton A%sT 1942
- -4:00 Canada A%sT 1946
- -4:00 Moncton A%sT 1973
- -4:00 Canada A%sT 1993
- -4:00 Moncton A%sT 2007
- -4:00 Canada A%sT
-
-# Quebec
-
-# From Paul Eggert (2006-07-09):
-# Shanks & Pottenger write that since 1970 most of Quebec has been
-# like Montreal.
-
-# From Paul Eggert (2006-06-27):
-# Matthews and Vincent (1998) also write that Quebec east of the -63
-# meridian is supposed to observe AST, but residents as far east as
-# Natashquan use EST/EDT, and residents east of Natashquan use AST.
-# In "Official time in Quebec" the Quebec department of justice writes in
-# http://www.justice.gouv.qc.ca/english/publications/generale/temps-regl-1-a.htm
-# that "The residents of the Municipality of the
-# Cote-Nord-du-Golfe-Saint-Laurent and the municipalities of Saint-Augustin,
-# Bonne-Esperance and Blanc-Sablon apply the Official Time Act as it is
-# written and use Atlantic standard time all year round. The same applies to
-# the residents of the Native facilities along the lower North Shore."
-# <http://www.assnat.qc.ca/eng/37legislature2/Projets-loi/Publics/06-a002.htm>
-# says this common practice was codified into law as of 2007.
-# For lack of better info, guess this practice began around 1970, contra to
-# Shanks & Pottenger who have this region observing AST/ADT.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Mont 1917 only - Mar 25 2:00 1:00 D
-Rule Mont 1917 only - Apr 24 0:00 0 S
-Rule Mont 1919 only - Mar 31 2:30 1:00 D
-Rule Mont 1919 only - Oct 25 2:30 0 S
-Rule Mont 1920 only - May 2 2:30 1:00 D
-Rule Mont 1920 1922 - Oct Sun>=1 2:30 0 S
-Rule Mont 1921 only - May 1 2:00 1:00 D
-Rule Mont 1922 only - Apr 30 2:00 1:00 D
-Rule Mont 1924 only - May 17 2:00 1:00 D
-Rule Mont 1924 1926 - Sep lastSun 2:30 0 S
-Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D
-# The 1927-to-1937 rules can be expressed more simply as
-# Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D
-# Rule Mont 1927 1937 - Sep lastSat 24:00 0 S
-# The rules below avoid use of 24:00
-# (which pre-1998 versions of zic cannot handle).
-Rule Mont 1927 only - May 1 0:00 1:00 D
-Rule Mont 1927 1932 - Sep lastSun 0:00 0 S
-Rule Mont 1928 1931 - Apr lastSun 0:00 1:00 D
-Rule Mont 1932 only - May 1 0:00 1:00 D
-Rule Mont 1933 1940 - Apr lastSun 0:00 1:00 D
-Rule Mont 1933 only - Oct 1 0:00 0 S
-Rule Mont 1934 1939 - Sep lastSun 0:00 0 S
-Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D
-Rule Mont 1945 1948 - Sep lastSun 2:00 0 S
-Rule Mont 1949 1950 - Oct lastSun 2:00 0 S
-Rule Mont 1951 1956 - Sep lastSun 2:00 0 S
-Rule Mont 1957 1973 - Oct lastSun 2:00 0 S
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Blanc-Sablon -3:48:28 - LMT 1884
- -4:00 Canada A%sT 1970
- -4:00 - AST
-Zone America/Montreal -4:54:16 - LMT 1884
- -5:00 Mont E%sT 1918
- -5:00 Canada E%sT 1919
- -5:00 Mont E%sT 1942 Feb 9 2:00s
- -5:00 Canada E%sT 1946
- -5:00 Mont E%sT 1974
- -5:00 Canada E%sT
-
-
-# Ontario
-
-# From Paul Eggert (2006-07-09):
-# Shanks & Pottenger write that since 1970 most of Ontario has been like
-# Toronto.
-# Thunder Bay skipped DST in 1973.
-# Many smaller locales did not observe peacetime DST until 1974;
-# Nipigon (EST) and Rainy River (CST) are the largest that we know of.
-# Far west Ontario is like Winnipeg; far east Quebec is like Halifax.
-
-# From Mark Brader (2003-07-26):
-# [According to the Toronto Star] Orillia, Ontario, adopted DST
-# effective Saturday, 1912-06-22, 22:00; the article mentions that
-# Port Arthur (now part of Thunder Bay, Ontario) as well as Moose Jaw
-# have already done so. In Orillia DST was to run until Saturday,
-# 1912-08-31 (no time mentioned), but it was met with considerable
-# hostility from certain segments of the public, and was revoked after
-# only two weeks -- I copied it as Saturday, 1912-07-07, 22:00, but
-# presumably that should be -07-06. (1912-06-19, -07-12; also letters
-# earlier in June).
-#
-# Kenora, Ontario, was to abandon DST on 1914-06-01 (-05-21).
-
-# From Paul Eggert (1997-10-17):
-# Mark Brader writes that an article in the 1997-10-14 Toronto Star
-# says that Atikokan, Ontario currently does not observe DST,
-# but will vote on 11-10 whether to use EST/EDT.
-# He also writes that the
-# <a href="http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html">
-# Ontario Time Act (1990, Chapter T.9)
-# </a>
-# says that Ontario east of 90W uses EST/EDT, and west of 90W uses CST/CDT.
-# Officially Atikokan is therefore on CST/CDT, and most likely this report
-# concerns a non-official time observed as a matter of local practice.
-#
-# From Paul Eggert (2000-10-02):
-# Matthews and Vincent (1998) write that Atikokan, Pickle Lake, and
-# New Osnaburgh observe CST all year, that Big Trout Lake observes
-# CST/CDT, and that Upsala and Shebandowan observe EST/EDT, all in
-# violation of the official Ontario rules.
-#
-# From Paul Eggert (2006-07-09):
-# Chris Walton (2006-07-06) mentioned an article by Stephanie MacLellan in the
-# 2005-07-21 Chronicle-Journal, which said:
-#
-# The clocks in Atikokan stay set on standard time year-round.
-# This means they spend about half the time on central time and
-# the other half on eastern time.
-#
-# For the most part, the system works, Mayor Dennis Brown said.
-#
-# "The majority of businesses in Atikokan deal more with Eastern
-# Canada, but there are some that deal with Western Canada," he
-# said. "I don't see any changes happening here."
-#
-# Walton also writes "Supposedly Pickle Lake and Mishkeegogamang
-# [New Osnaburgh] follow the same practice."
-
-# From Garry McKinnon (2006-07-14) via Chris Walton:
-# I chatted with a member of my board who has an outstanding memory
-# and a long history in Atikokan (and in the telecom industry) and he
-# can say for certain that Atikokan has been practicing the current
-# time keeping since 1952, at least.
-
-# From Paul Eggert (2006-07-17):
-# Shanks & Pottenger say that Atikokan has agreed with Rainy River
-# ever since standard time was introduced, but the information from
-# McKinnon sounds more authoritative. For now, assume that Atikokan
-# switched to EST immediately after WWII era daylight saving time
-# ended. This matches the old (less-populous) America/Coral_Harbour
-# entry since our cutoff date of 1970, so we can move
-# America/Coral_Harbour to the 'backward' file.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Toronto 1919 only - Mar 30 23:30 1:00 D
-Rule Toronto 1919 only - Oct 26 0:00 0 S
-Rule Toronto 1920 only - May 2 2:00 1:00 D
-Rule Toronto 1920 only - Sep 26 0:00 0 S
-Rule Toronto 1921 only - May 15 2:00 1:00 D
-Rule Toronto 1921 only - Sep 15 2:00 0 S
-Rule Toronto 1922 1923 - May Sun>=8 2:00 1:00 D
-# Shanks & Pottenger say 1923-09-19; assume it's a typo and that "-16"
-# was meant.
-Rule Toronto 1922 1926 - Sep Sun>=15 2:00 0 S
-Rule Toronto 1924 1927 - May Sun>=1 2:00 1:00 D
-# The 1927-to-1939 rules can be expressed more simply as
-# Rule Toronto 1927 1937 - Sep Sun>=25 2:00 0 S
-# Rule Toronto 1928 1937 - Apr Sun>=25 2:00 1:00 D
-# Rule Toronto 1938 1940 - Apr lastSun 2:00 1:00 D
-# Rule Toronto 1938 1939 - Sep lastSun 2:00 0 S
-# The rules below avoid use of Sun>=25
-# (which pre-2004 versions of zic cannot handle).
-Rule Toronto 1927 1932 - Sep lastSun 2:00 0 S
-Rule Toronto 1928 1931 - Apr lastSun 2:00 1:00 D
-Rule Toronto 1932 only - May 1 2:00 1:00 D
-Rule Toronto 1933 1940 - Apr lastSun 2:00 1:00 D
-Rule Toronto 1933 only - Oct 1 2:00 0 S
-Rule Toronto 1934 1939 - Sep lastSun 2:00 0 S
-Rule Toronto 1945 1946 - Sep lastSun 2:00 0 S
-Rule Toronto 1946 only - Apr lastSun 2:00 1:00 D
-Rule Toronto 1947 1949 - Apr lastSun 0:00 1:00 D
-Rule Toronto 1947 1948 - Sep lastSun 0:00 0 S
-Rule Toronto 1949 only - Nov lastSun 0:00 0 S
-Rule Toronto 1950 1973 - Apr lastSun 2:00 1:00 D
-Rule Toronto 1950 only - Nov lastSun 2:00 0 S
-Rule Toronto 1951 1956 - Sep lastSun 2:00 0 S
-# Shanks & Pottenger say Toronto ended DST a week early in 1971,
-# namely on 1971-10-24, but Mark Brader wrote (2003-05-31) that this
-# is wrong, and that he had confirmed it by checking the 1971-10-30
-# Toronto Star, which said that DST was ending 1971-10-31 as usual.
-Rule Toronto 1957 1973 - Oct lastSun 2:00 0 S
-
-# From Paul Eggert (2003-07-27):
-# Willett (1914-03) writes (p. 17) "In the Cities of Fort William, and
-# Port Arthur, Ontario, the principle of the Bill has been in
-# operation for the past three years, and in the City of Moose Jaw,
-# Saskatchewan, for one year."
-
-# From David Bryan via Tory Tronrud, Director/Curator,
-# Thunder Bay Museum (2003-11-12):
-# There is some suggestion, however, that, by-law or not, daylight
-# savings time was being practiced in Fort William and Port Arthur
-# before 1909.... [I]n 1910, the line between the Eastern and Central
-# Time Zones was permanently moved about two hundred miles west to
-# include the Thunder Bay area.... When Canada adopted daylight
-# savings time in 1916, Fort William and Port Arthur, having done so
-# already, did not change their clocks.... During the Second World
-# War,... [t]he cities agreed to implement DST during the summer
-# months for the remainder of the war years.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Toronto -5:17:32 - LMT 1895
- -5:00 Canada E%sT 1919
- -5:00 Toronto E%sT 1942 Feb 9 2:00s
- -5:00 Canada E%sT 1946
- -5:00 Toronto E%sT 1974
- -5:00 Canada E%sT
-Zone America/Thunder_Bay -5:57:00 - LMT 1895
- -6:00 - CST 1910
- -5:00 - EST 1942
- -5:00 Canada E%sT 1970
- -5:00 Mont E%sT 1973
- -5:00 - EST 1974
- -5:00 Canada E%sT
-Zone America/Nipigon -5:53:04 - LMT 1895
- -5:00 Canada E%sT 1940 Sep 29
- -5:00 1:00 EDT 1942 Feb 9 2:00s
- -5:00 Canada E%sT
-Zone America/Rainy_River -6:18:16 - LMT 1895
- -6:00 Canada C%sT 1940 Sep 29
- -6:00 1:00 CDT 1942 Feb 9 2:00s
- -6:00 Canada C%sT
-Zone America/Atikokan -6:06:28 - LMT 1895
- -6:00 Canada C%sT 1940 Sep 29
- -6:00 1:00 CDT 1942 Feb 9 2:00s
- -6:00 Canada C%sT 1945 Sep 30 2:00
- -5:00 - EST
-
-
-# Manitoba
-
-# From Rob Douglas (2006-04-06):
-# the old Manitoba Time Act - as amended by Bill 2, assented to
-# March 27, 1987 ... said ...
-# "between two o'clock Central Standard Time in the morning of
-# the first Sunday of April of each year and two o'clock Central
-# Standard Time in the morning of the last Sunday of October next
-# following, one hour in advance of Central Standard Time."...
-# I believe that the English legislation [of the old time act] had =
-# been assented to (March 22, 1967)....
-# Also, as far as I can tell, there was no order-in-council varying
-# the time of Daylight Saving Time for 2005 and so the provisions of
-# the 1987 version would apply - the changeover was at 2:00 Central
-# Standard Time (i.e. not until 3:00 Central Daylight Time).
-
-# From Paul Eggert (2006-04-10):
-# Shanks & Pottenger say Manitoba switched at 02:00 (not 02:00s)
-# starting 1966. Since 02:00s is clearly correct for 1967 on, assume
-# it was also 02:00s in 1966.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Winn 1916 only - Apr 23 0:00 1:00 D
-Rule Winn 1916 only - Sep 17 0:00 0 S
-Rule Winn 1918 only - Apr 14 2:00 1:00 D
-Rule Winn 1918 only - Oct 31 2:00 0 S
-Rule Winn 1937 only - May 16 2:00 1:00 D
-Rule Winn 1937 only - Sep 26 2:00 0 S
-Rule Winn 1942 only - Feb 9 2:00 1:00 W # War
-Rule Winn 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule Winn 1945 only - Sep lastSun 2:00 0 S
-Rule Winn 1946 only - May 12 2:00 1:00 D
-Rule Winn 1946 only - Oct 13 2:00 0 S
-Rule Winn 1947 1949 - Apr lastSun 2:00 1:00 D
-Rule Winn 1947 1949 - Sep lastSun 2:00 0 S
-Rule Winn 1950 only - May 1 2:00 1:00 D
-Rule Winn 1950 only - Sep 30 2:00 0 S
-Rule Winn 1951 1960 - Apr lastSun 2:00 1:00 D
-Rule Winn 1951 1958 - Sep lastSun 2:00 0 S
-Rule Winn 1959 only - Oct lastSun 2:00 0 S
-Rule Winn 1960 only - Sep lastSun 2:00 0 S
-Rule Winn 1963 only - Apr lastSun 2:00 1:00 D
-Rule Winn 1963 only - Sep 22 2:00 0 S
-Rule Winn 1966 1986 - Apr lastSun 2:00s 1:00 D
-Rule Winn 1966 2005 - Oct lastSun 2:00s 0 S
-Rule Winn 1987 2005 - Apr Sun>=1 2:00s 1:00 D
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Winnipeg -6:28:36 - LMT 1887 Jul 16
- -6:00 Winn C%sT 2006
- -6:00 Canada C%sT
-
-
-# Saskatchewan
-
-# From Mark Brader (2003-07-26):
-# The first actual adoption of DST in Canada was at the municipal
-# level. As the [Toronto] Star put it (1912-06-07), "While people
-# elsewhere have long been talking of legislation to save daylight,
-# the city of Moose Jaw [Saskatchewan] has acted on its own hook."
-# DST in Moose Jaw began on Saturday, 1912-06-01 (no time mentioned:
-# presumably late evening, as below), and would run until "the end of
-# the summer". The discrepancy between municipal time and railroad
-# time was noted.
-
-# From Paul Eggert (2003-07-27):
-# Willett (1914-03) notes that DST "has been in operation ... in the
-# City of Moose Jaw, Saskatchewan, for one year."
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say that since 1970 this region has mostly been as Regina.
-# Some western towns (e.g. Swift Current) switched from MST/MDT to CST in 1972.
-# Other western towns (e.g. Lloydminster) are like Edmonton.
-# Matthews and Vincent (1998) write that Denare Beach and Creighton
-# are like Winnipeg, in violation of Saskatchewan law.
-
-# From W. Jones (1992-11-06):
-# The. . .below is based on information I got from our law library, the
-# provincial archives, and the provincial Community Services department.
-# A precise history would require digging through newspaper archives, and
-# since you didn't say what you wanted, I didn't bother.
-#
-# Saskatchewan is split by a time zone meridian (105W) and over the years
-# the boundary became pretty ragged as communities near it reevaluated
-# their affiliations in one direction or the other. In 1965 a provincial
-# referendum favoured legislating common time practices.
-#
-# On 15 April 1966 the Time Act (c. T-14, Revised Statutes of
-# Saskatchewan 1978) was proclaimed, and established that the eastern
-# part of Saskatchewan would use CST year round, that districts in
-# northwest Saskatchewan would by default follow CST but could opt to
-# follow Mountain Time rules (thus 1 hour difference in the winter and
-# zero in the summer), and that districts in southwest Saskatchewan would
-# by default follow MT but could opt to follow CST.
-#
-# It took a few years for the dust to settle (I know one story of a town
-# on one time zone having its school in another, such that a mom had to
-# serve her family lunch in two shifts), but presently it seems that only
-# a few towns on the border with Alberta (e.g. Lloydminster) follow MT
-# rules any more; all other districts appear to have used CST year round
-# since sometime in the 1960s.
-
-# From Chris Walton (2006-06-26):
-# The Saskatchewan time act which was last updated in 1996 is about 30 pages
-# long and rather painful to read.
-# http://www.qp.gov.sk.ca/documents/English/Statutes/Statutes/T14.pdf
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Regina 1918 only - Apr 14 2:00 1:00 D
-Rule Regina 1918 only - Oct 31 2:00 0 S
-Rule Regina 1930 1934 - May Sun>=1 0:00 1:00 D
-Rule Regina 1930 1934 - Oct Sun>=1 0:00 0 S
-Rule Regina 1937 1941 - Apr Sun>=8 0:00 1:00 D
-Rule Regina 1937 only - Oct Sun>=8 0:00 0 S
-Rule Regina 1938 only - Oct Sun>=1 0:00 0 S
-Rule Regina 1939 1941 - Oct Sun>=8 0:00 0 S
-Rule Regina 1942 only - Feb 9 2:00 1:00 W # War
-Rule Regina 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule Regina 1945 only - Sep lastSun 2:00 0 S
-Rule Regina 1946 only - Apr Sun>=8 2:00 1:00 D
-Rule Regina 1946 only - Oct Sun>=8 2:00 0 S
-Rule Regina 1947 1957 - Apr lastSun 2:00 1:00 D
-Rule Regina 1947 1957 - Sep lastSun 2:00 0 S
-Rule Regina 1959 only - Apr lastSun 2:00 1:00 D
-Rule Regina 1959 only - Oct lastSun 2:00 0 S
-#
-Rule Swift 1957 only - Apr lastSun 2:00 1:00 D
-Rule Swift 1957 only - Oct lastSun 2:00 0 S
-Rule Swift 1959 1961 - Apr lastSun 2:00 1:00 D
-Rule Swift 1959 only - Oct lastSun 2:00 0 S
-Rule Swift 1960 1961 - Sep lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Regina -6:58:36 - LMT 1905 Sep
- -7:00 Regina M%sT 1960 Apr lastSun 2:00
- -6:00 - CST
-Zone America/Swift_Current -7:11:20 - LMT 1905 Sep
- -7:00 Canada M%sT 1946 Apr lastSun 2:00
- -7:00 Regina M%sT 1950
- -7:00 Swift M%sT 1972 Apr lastSun 2:00
- -6:00 - CST
-
-
-# Alberta
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Edm 1918 1919 - Apr Sun>=8 2:00 1:00 D
-Rule Edm 1918 only - Oct 31 2:00 0 S
-Rule Edm 1919 only - May 27 2:00 0 S
-Rule Edm 1920 1923 - Apr lastSun 2:00 1:00 D
-Rule Edm 1920 only - Oct lastSun 2:00 0 S
-Rule Edm 1921 1923 - Sep lastSun 2:00 0 S
-Rule Edm 1942 only - Feb 9 2:00 1:00 W # War
-Rule Edm 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule Edm 1945 only - Sep lastSun 2:00 0 S
-Rule Edm 1947 only - Apr lastSun 2:00 1:00 D
-Rule Edm 1947 only - Sep lastSun 2:00 0 S
-Rule Edm 1967 only - Apr lastSun 2:00 1:00 D
-Rule Edm 1967 only - Oct lastSun 2:00 0 S
-Rule Edm 1969 only - Apr lastSun 2:00 1:00 D
-Rule Edm 1969 only - Oct lastSun 2:00 0 S
-Rule Edm 1972 1986 - Apr lastSun 2:00 1:00 D
-Rule Edm 1972 2006 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Edmonton -7:33:52 - LMT 1906 Sep
- -7:00 Edm M%sT 1987
- -7:00 Canada M%sT
-
-
-# British Columbia
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that since 1970 most of this region has
-# been like Vancouver.
-# Dawson Creek uses MST. Much of east BC is like Edmonton.
-# Matthews and Vincent (1998) write that Creston is like Dawson Creek.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Vanc 1918 only - Apr 14 2:00 1:00 D
-Rule Vanc 1918 only - Oct 31 2:00 0 S
-Rule Vanc 1942 only - Feb 9 2:00 1:00 W # War
-Rule Vanc 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule Vanc 1945 only - Sep 30 2:00 0 S
-Rule Vanc 1946 1986 - Apr lastSun 2:00 1:00 D
-Rule Vanc 1946 only - Oct 13 2:00 0 S
-Rule Vanc 1947 1961 - Sep lastSun 2:00 0 S
-Rule Vanc 1962 2006 - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Vancouver -8:12:28 - LMT 1884
- -8:00 Vanc P%sT 1987
- -8:00 Canada P%sT
-Zone America/Dawson_Creek -8:00:56 - LMT 1884
- -8:00 Canada P%sT 1947
- -8:00 Vanc P%sT 1972 Aug 30 2:00
- -7:00 - MST
-
-
-# Northwest Territories, Nunavut, Yukon
-
-# From Paul Eggert (2006-03-22):
-# Dawson switched to PST in 1973. Inuvik switched to MST in 1979.
-# Mathew Englander (1996-10-07) gives the following refs:
-# * 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
-# c. 7 defines Yukon standard time as UTC-9. This is still valid;
-# see Interpretation Act, R.S.C. 1985, c. I-21, s. 35(1).
-# * C.O. 1973/214 switched Yukon to PST on 1973-10-28 00:00.
-# * O.I.C. 1980/02 established DST.
-# * O.I.C. 1987/056 changed DST to Apr firstSun 2:00 to Oct lastSun 2:00.
-# Shanks & Pottenger say Yukon's 1973-10-28 switch was at 2:00; go
-# with Englander.
-# From Chris Walton (2006-06-26):
-# Here is a link to the old daylight saving portion of the interpretation
-# act which was last updated in 1987:
-# http://www.gov.yk.ca/legislation/regs/oic1987_056.pdf
-
-# From Rives McDow (1999-09-04):
-# Nunavut ... moved ... to incorporate the whole territory into one time zone.
-# <a href="http://www.nunatsiaq.com/nunavut/nvt90903_13.html">
-# Nunavut moves to single time zone Oct. 31
-# </a>
-#
-# From Antoine Leca (1999-09-06):
-# We then need to create a new timezone for the Kitikmeot region of Nunavut
-# to differentiate it from the Yellowknife region.
-
-# From Paul Eggert (1999-09-20):
-# <a href="http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html">
-# Basic Facts: The New Territory
-# </a> (1999) reports that Pangnirtung operates on eastern time,
-# and that Coral Harbour does not observe DST. We don't know when
-# Pangnirtung switched to eastern time; we'll guess 1995.
-
-# From Rives McDow (1999-11-08):
-# On October 31, when the rest of Nunavut went to Central time,
-# Pangnirtung wobbled. Here is the result of their wobble:
-#
-# The following businesses and organizations in Pangnirtung use Central Time:
-#
-# First Air, Power Corp, Nunavut Construction, Health Center, RCMP,
-# Eastern Arctic National Parks, A & D Specialist
-#
-# The following businesses and organizations in Pangnirtung use Eastern Time:
-#
-# Hamlet office, All other businesses, Both schools, Airport operator
-#
-# This has made for an interesting situation there, which warranted the news.
-# No one there that I spoke with seems concerned, or has plans to
-# change the local methods of keeping time, as it evidently does not
-# really interfere with any activities or make things difficult locally.
-# They plan to celebrate New Year's turn-over twice, one hour apart,
-# so it appears that the situation will last at least that long.
-# The Nunavut Intergovernmental Affairs hopes that they will "come to
-# their senses", but the locals evidently don't see any problem with
-# the current state of affairs.
-
-# From Michaela Rodrigue, writing in the
-# <a href="http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html">
-# Nunatsiaq News (1999-11-19)</a>:
-# Clyde River, Pangnirtung and Sanikiluaq now operate with two time zones,
-# central - or Nunavut time - for government offices, and eastern time
-# for municipal offices and schools.... Igloolik [was similar but then]
-# made the switch to central time on Saturday, Nov. 6.
-
-# From Paul Eggert (2000-10-02):
-# Matthews and Vincent (1998) say the following, but we lack histories
-# for these potential new Zones.
-#
-# The Canadian Forces station at Alert uses Eastern Time while the
-# handful of residents at the Eureka weather station [in the Central
-# zone] skip daylight savings. Baffin Island, which is crossed by the
-# Central, Eastern and Atlantic Time zones only uses Eastern Time.
-# Gjoa Haven, Taloyoak and Pelly Bay all use Mountain instead of
-# Central Time and Southampton Island [in the Central zone] is not
-# required to use daylight savings.
-
-# From
-# <a href="http://www.nunatsiaq.com/archives/nunavut001130/nvt21110_02.html">
-# Nunavut now has two time zones
-# </a> (2000-11-10):
-# The Nunavut government would allow its employees in Kugluktuk and
-# Cambridge Bay to operate on central time year-round, putting them
-# one hour behind the rest of Nunavut for six months during the winter.
-# At the end of October the two communities had rebelled against
-# Nunavut's unified time zone, refusing to shift to eastern time with
-# the rest of the territory for the winter. Cambridge Bay remained on
-# central time, while Kugluktuk, even farther west, reverted to
-# mountain time, which they had used before the advent of Nunavut's
-# unified time zone in 1999.
-#
-# From Rives McDow (2001-01-20), quoting the Nunavut government:
-# The preceding decision came into effect at midnight, Saturday Nov 4, 2000.
-
-# From Paul Eggert (2000-12-04):
-# Let's just keep track of the official times for now.
-
-# From Rives McDow (2001-03-07):
-# The premier of Nunavut has issued a ministerial statement advising
-# that effective 2001-04-01, the territory of Nunavut will revert
-# back to three time zones (mountain, central, and eastern). Of the
-# cities in Nunavut, Coral Harbor is the only one that I know of that
-# has said it will not observe dst, staying on EST year round. I'm
-# checking for more info, and will get back to you if I come up with
-# more.
-# [Also see <http://www.nunatsiaq.com/nunavut/nvt10309_06.html> (2001-03-09).]
-
-# From Gwillim Law (2005-05-21):
-# According to maps at
-# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SWE.jpg
-# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SSE.jpg
-# (both dated 2003), and
-# http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp
-# (from a 1998 Canadian Geographic article), the de facto and de jure time
-# for Southampton Island (at the north end of Hudson Bay) is UTC-5 all year
-# round. Using Google, it's easy to find other websites that confirm this.
-# I wasn't able to find how far back this time regimen goes, but since it
-# predates the creation of Nunavut, it probably goes back many years....
-# The Inuktitut name of Coral Harbour is Sallit, but it's rarely used.
-#
-# From Paul Eggert (2005-07-26):
-# For lack of better information, assume that Southampton Island observed
-# daylight saving only during wartime.
-
-# From Chris Walton (2007-03-01):
-# ... the community of Resolute (located on Cornwallis Island in
-# Nunavut) moved from Central Time to Eastern Time last November.
-# Basically the community did not change its clocks at the end of
-# daylight saving....
-# http://www.nnsl.com/frames/newspapers/2006-11/nov13_06none.html
-
-# From Chris Walton (2007-03-14):
-# Today I phoned the "hamlet office" to find out what Resolute was doing with
-# its clocks.
-#
-# The individual that answered the phone confirmed that the clocks did not
-# move at the end of daylight saving on October 29/2006. He also told me that
-# the clocks did not move this past weekend (March 11/2007)....
-#
-# America/Resolute should use the "Canada" Rule up to October 29/2006.
-# After that it should be fixed on Eastern Standard Time until further notice.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule NT_YK 1918 only - Apr 14 2:00 1:00 D
-Rule NT_YK 1918 only - Oct 27 2:00 0 S
-Rule NT_YK 1919 only - May 25 2:00 1:00 D
-Rule NT_YK 1919 only - Nov 1 0:00 0 S
-Rule NT_YK 1942 only - Feb 9 2:00 1:00 W # War
-Rule NT_YK 1945 only - Aug 14 23:00u 1:00 P # Peace
-Rule NT_YK 1945 only - Sep 30 2:00 0 S
-Rule NT_YK 1965 only - Apr lastSun 0:00 2:00 DD
-Rule NT_YK 1965 only - Oct lastSun 2:00 0 S
-Rule NT_YK 1980 1986 - Apr lastSun 2:00 1:00 D
-Rule NT_YK 1980 2006 - Oct lastSun 2:00 0 S
-Rule NT_YK 1987 2006 - Apr Sun>=1 2:00 1:00 D
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-# aka Panniqtuuq
-Zone America/Pangnirtung 0 - zzz 1921 # trading post est.
- -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00
- -5:00 Canada E%sT 1999 Oct 31 2:00
- -6:00 Canada C%sT 2000 Oct 29 2:00
- -5:00 Canada E%sT
-# formerly Frobisher Bay
-Zone America/Iqaluit 0 - zzz 1942 Aug # Frobisher Bay est.
- -5:00 NT_YK E%sT 1999 Oct 31 2:00
- -6:00 Canada C%sT 2000 Oct 29 2:00
- -5:00 Canada E%sT
-# aka Qausuittuq
-Zone America/Resolute 0 - zzz 1947 Aug 31 # Resolute founded
- -6:00 NT_YK C%sT 2000 Oct 29 2:00
- -5:00 - EST 2001 Apr 1 3:00
- -6:00 Canada C%sT 2006 Oct 29 2:00
- -5:00 - EST
-# aka Kangiqiniq
-Zone America/Rankin_Inlet 0 - zzz 1957 # Rankin Inlet founded
- -6:00 NT_YK C%sT 2000 Oct 29 2:00
- -5:00 - EST 2001 Apr 1 3:00
- -6:00 Canada C%sT
-# aka Iqaluktuuttiaq
-Zone America/Cambridge_Bay 0 - zzz 1920 # trading post est.?
- -7:00 NT_YK M%sT 1999 Oct 31 2:00
- -6:00 Canada C%sT 2000 Oct 29 2:00
- -5:00 - EST 2000 Nov 5 0:00
- -6:00 - CST 2001 Apr 1 3:00
- -7:00 Canada M%sT
-Zone America/Yellowknife 0 - zzz 1935 # Yellowknife founded?
- -7:00 NT_YK M%sT 1980
- -7:00 Canada M%sT
-Zone America/Inuvik 0 - zzz 1953 # Inuvik founded
- -8:00 NT_YK P%sT 1979 Apr lastSun 2:00
- -7:00 NT_YK M%sT 1980
- -7:00 Canada M%sT
-Zone America/Whitehorse -9:00:12 - LMT 1900 Aug 20
- -9:00 NT_YK Y%sT 1966 Jul 1 2:00
- -8:00 NT_YK P%sT 1980
- -8:00 Canada P%sT
-Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
- -9:00 NT_YK Y%sT 1973 Oct 28 0:00
- -8:00 NT_YK P%sT 1980
- -8:00 Canada P%sT
-
-
-###############################################################################
-
-# Mexico
-
-# From Paul Eggert (2001-03-05):
-# The Investigation and Analysis Service of the
-# Mexican Library of Congress (MLoC) has published a
-# <a href="http://www.cddhcu.gob.mx/bibliot/publica/inveyana/polisoc/horver/">
-# history of Mexican local time (in Spanish)
-# </a>.
-#
-# Here are the discrepancies between Shanks & Pottenger (S&P) and the MLoC.
-# (In all cases we go with the MLoC.)
-# S&P report that Baja was at -8:00 in 1922/1923.
-# S&P say the 1930 transition in Baja was 1930-11-16.
-# S&P report no DST during summer 1931.
-# S&P report a transition at 1932-03-30 23:00, not 1932-04-01.
-
-# From Gwillim Law (2001-02-20):
-# There are some other discrepancies between the Decrees page and the
-# tz database. I think they can best be explained by supposing that
-# the researchers who prepared the Decrees page failed to find some of
-# the relevant documents.
-
-# From Alan Perry (1996-02-15):
-# A guy from our Mexico subsidiary finally found the Presidential Decree
-# outlining the timezone changes in Mexico.
-#
-# ------------- Begin Forwarded Message -------------
-#
-# I finally got my hands on the Official Presidential Decree that sets up the
-# rules for the DST changes. The rules are:
-#
-# 1. The country is divided in 3 timezones:
-# - Baja California Norte (the Mexico/BajaNorte TZ)
-# - Baja California Sur, Nayarit, Sinaloa and Sonora (the Mexico/BajaSur TZ)
-# - The rest of the country (the Mexico/General TZ)
-#
-# 2. From the first Sunday in April at 2:00 AM to the last Sunday in October
-# at 2:00 AM, the times in each zone are as follows:
-# BajaNorte: GMT+7
-# BajaSur: GMT+6
-# General: GMT+5
-#
-# 3. The rest of the year, the times are as follows:
-# BajaNorte: GMT+8
-# BajaSur: GMT+7
-# General: GMT+6
-#
-# The Decree was published in Mexico's Official Newspaper on January 4th.
-#
-# -------------- End Forwarded Message --------------
-# From Paul Eggert (1996-06-12):
-# For an English translation of the decree, see
-# <a href="http://mexico-travel.com/extra/timezone_eng.html">
-# ``Diario Oficial: Time Zone Changeover'' (1996-01-04).
-# </a>
-
-# From Rives McDow (1998-10-08):
-# The State of Quintana Roo has reverted back to central STD and DST times
-# (i.e. UTC -0600 and -0500 as of 1998-08-02).
-
-# From Rives McDow (2000-01-10):
-# Effective April 4, 1999 at 2:00 AM local time, Sonora changed to the time
-# zone 5 hours from the International Date Line, and will not observe daylight
-# savings time so as to stay on the same time zone as the southern part of
-# Arizona year round.
-
-# From Jesper Norgaard, translating
-# <http://www.reforma.com/nacional/articulo/064327/> (2001-01-17):
-# In Oaxaca, the 55.000 teachers from the Section 22 of the National
-# Syndicate of Education Workers, refuse to apply daylight saving each
-# year, so that the more than 10,000 schools work at normal hour the
-# whole year.
-
-# From Gwillim Law (2001-01-19):
-# <http://www.reforma.com/negocios_y_dinero/articulo/064481/> ... says
-# (translated):...
-# January 17, 2000 - The Energy Secretary, Ernesto Martens, announced
-# that Summer Time will be reduced from seven to five months, starting
-# this year....
-# <http://www.publico.com.mx/scripts/texto3.asp?action=pagina&pag=21&pos=p&secc=naci&date=01/17/2001>
-# [translated], says "summer time will ... take effect on the first Sunday
-# in May, and end on the last Sunday of September.
-
-# From Arthur David Olson (2001-01-25):
-# The 2001-01-24 traditional Washington Post contained the page one
-# story "Timely Issue Divides Mexicans."...
-# http://www.washingtonpost.com/wp-dyn/articles/A37383-2001Jan23.html
-# ... Mexico City Mayor Lopez Obrador "...is threatening to keep
-# Mexico City and its 20 million residents on a different time than
-# the rest of the country..." In particular, Lopez Obrador would abolish
-# observation of Daylight Saving Time.
-
-# <a href="http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre">
-# Official statute published by the Energy Department
-# </a> (2001-02-01) shows Baja and Chihauhua as still using US DST rules,
-# and Sonora with no DST. This was reported by Jesper Norgaard (2001-02-03).
-
-# From Paul Eggert (2001-03-03):
-#
-# <a href="http://www.latimes.com/news/nation/20010303/t000018766.html">
-# James F. Smith writes in today's LA Times
-# </a>
-# * Sonora will continue to observe standard time.
-# * Last week Mexico City's mayor Andres Manuel Lopez Obrador decreed that
-# the Federal District will not adopt DST.
-# * 4 of 16 district leaders announced they'll ignore the decree.
-# * The decree does not affect federal-controlled facilities including
-# the airport, banks, hospitals, and schools.
-#
-# For now we'll assume that the Federal District will bow to federal rules.
-
-# From Jesper Norgaard (2001-04-01):
-# I found some references to the Mexican application of daylight
-# saving, which modifies what I had already sent you, stating earlier
-# that a number of northern Mexican states would go on daylight
-# saving. The modification reverts this to only cover Baja California
-# (Norte), while all other states (except Sonora, who has no daylight
-# saving all year) will follow the original decree of president
-# Vicente Fox, starting daylight saving May 6, 2001 and ending
-# September 30, 2001.
-# References: "Diario de Monterrey" <www.diariodemonterrey.com/index.asp>
-# Palabra <http://palabra.infosel.com/010331/primera/ppri3101.pdf> (2001-03-31)
-
-# From Reuters (2001-09-04):
-# Mexico's Supreme Court on Tuesday declared that daylight savings was
-# unconstitutional in Mexico City, creating the possibility the
-# capital will be in a different time zone from the rest of the nation
-# next year.... The Supreme Court's ruling takes effect at 2:00
-# a.m. (0800 GMT) on Sept. 30, when Mexico is scheduled to revert to
-# standard time. "This is so residents of the Federal District are not
-# subject to unexpected time changes," a statement from the court said.
-
-# From Jesper Norgaard Welen (2002-03-12):
-# ... consulting my local grocery store(!) and my coworkers, they all insisted
-# that a new decision had been made to reinstate US style DST in Mexico....
-# http://www.conae.gob.mx/ahorro/horaver2001_m1_2002.html (2002-02-20)
-# confirms this. Sonora as usual is the only state where DST is not applied.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Mexico 1939 only - Feb 5 0:00 1:00 D
-Rule Mexico 1939 only - Jun 25 0:00 0 S
-Rule Mexico 1940 only - Dec 9 0:00 1:00 D
-Rule Mexico 1941 only - Apr 1 0:00 0 S
-Rule Mexico 1943 only - Dec 16 0:00 1:00 W # War
-Rule Mexico 1944 only - May 1 0:00 0 S
-Rule Mexico 1950 only - Feb 12 0:00 1:00 D
-Rule Mexico 1950 only - Jul 30 0:00 0 S
-Rule Mexico 1996 2000 - Apr Sun>=1 2:00 1:00 D
-Rule Mexico 1996 2000 - Oct lastSun 2:00 0 S
-Rule Mexico 2001 only - May Sun>=1 2:00 1:00 D
-Rule Mexico 2001 only - Sep lastSun 2:00 0 S
-Rule Mexico 2002 max - Apr Sun>=1 2:00 1:00 D
-Rule Mexico 2002 max - Oct lastSun 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-# Quintana Roo
-Zone America/Cancun -5:47:04 - LMT 1922 Jan 1 0:12:56
- -6:00 - CST 1981 Dec 23
- -5:00 Mexico E%sT 1998 Aug 2 2:00
- -6:00 Mexico C%sT
-# Campeche, Yucatan
-Zone America/Merida -5:58:28 - LMT 1922 Jan 1 0:01:32
- -6:00 - CST 1981 Dec 23
- -5:00 - EST 1982 Dec 2
- -6:00 Mexico C%sT
-# Coahuila, Durango, Nuevo Leon, Tamaulipas
-Zone America/Monterrey -6:41:16 - LMT 1921 Dec 31 23:18:44
- -6:00 - CST 1988
- -6:00 US C%sT 1989
- -6:00 Mexico C%sT
-# Central Mexico
-Zone America/Mexico_City -6:36:36 - LMT 1922 Jan 1 0:23:24
- -7:00 - MST 1927 Jun 10 23:00
- -6:00 - CST 1930 Nov 15
- -7:00 - MST 1931 May 1 23:00
- -6:00 - CST 1931 Oct
- -7:00 - MST 1932 Apr 1
- -6:00 Mexico C%sT 2001 Sep 30 02:00
- -6:00 - CST 2002 Feb 20
- -6:00 Mexico C%sT
-# Chihuahua
-Zone America/Chihuahua -7:04:20 - LMT 1921 Dec 31 23:55:40
- -7:00 - MST 1927 Jun 10 23:00
- -6:00 - CST 1930 Nov 15
- -7:00 - MST 1931 May 1 23:00
- -6:00 - CST 1931 Oct
- -7:00 - MST 1932 Apr 1
- -6:00 - CST 1996
- -6:00 Mexico C%sT 1998
- -6:00 - CST 1998 Apr Sun>=1 3:00
- -7:00 Mexico M%sT
-# Sonora
-Zone America/Hermosillo -7:23:52 - LMT 1921 Dec 31 23:36:08
- -7:00 - MST 1927 Jun 10 23:00
- -6:00 - CST 1930 Nov 15
- -7:00 - MST 1931 May 1 23:00
- -6:00 - CST 1931 Oct
- -7:00 - MST 1932 Apr 1
- -6:00 - CST 1942 Apr 24
- -7:00 - MST 1949 Jan 14
- -8:00 - PST 1970
- -7:00 Mexico M%sT 1999
- -7:00 - MST
-# Baja California Sur, Nayarit, Sinaloa
-Zone America/Mazatlan -7:05:40 - LMT 1921 Dec 31 23:54:20
- -7:00 - MST 1927 Jun 10 23:00
- -6:00 - CST 1930 Nov 15
- -7:00 - MST 1931 May 1 23:00
- -6:00 - CST 1931 Oct
- -7:00 - MST 1932 Apr 1
- -6:00 - CST 1942 Apr 24
- -7:00 - MST 1949 Jan 14
- -8:00 - PST 1970
- -7:00 Mexico M%sT
-# Baja California
-Zone America/Tijuana -7:48:04 - LMT 1922 Jan 1 0:11:56
- -7:00 - MST 1924
- -8:00 - PST 1927 Jun 10 23:00
- -7:00 - MST 1930 Nov 15
- -8:00 - PST 1931 Apr 1
- -8:00 1:00 PDT 1931 Sep 30
- -8:00 - PST 1942 Apr 24
- -8:00 1:00 PWT 1945 Aug 14 23:00u
- -8:00 1:00 PPT 1945 Nov 12 # Peace
- -8:00 - PST 1948 Apr 5
- -8:00 1:00 PDT 1949 Jan 14
- -8:00 - PST 1954
- -8:00 CA P%sT 1961
- -8:00 - PST 1976
- -8:00 US P%sT 1996
- -8:00 Mexico P%sT 2001
- -8:00 US P%sT 2002 Feb 20
- -8:00 Mexico P%sT
-# From Paul Eggert (2006-03-22):
-# Formerly there was an America/Ensenada zone, which differed from
-# America/Tijuana only in that it did not observe DST from 1976
-# through 1995. This was as per Shanks (1999). But Shanks & Pottenger say
-# Ensenada did not observe DST from 1948 through 1975. Guy Harris reports
-# that the 1987 OAG says "Only Ensenada, Mexicale, San Felipe and
-# Tijuana observe DST," which agrees with Shanks & Pottenger but implies that
-# DST-observance was a town-by-town matter back then. This concerns
-# data after 1970 so most likely there should be at least one Zone
-# other than America/Tijuana for Baja, but it's not clear yet what its
-# name or contents should be.
-#
-# Revillagigedo Is
-# no information
-
-###############################################################################
-
-# Anguilla
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Anguilla -4:12:16 - LMT 1912 Mar 2
- -4:00 - AST
-
-# Antigua and Barbuda
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Antigua -4:07:12 - LMT 1912 Mar 2
- -5:00 - EST 1951
- -4:00 - AST
-
-# Bahamas
-#
-# From Sue Williams (2006-12-07):
-# The Bahamas announced about a month ago that they plan to change their DST
-# rules to sync with the U.S. starting in 2007....
-# http://www.jonesbahamas.com/?c=45&a=10412
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Bahamas 1964 1975 - Oct lastSun 2:00 0 S
-Rule Bahamas 1964 1975 - Apr lastSun 2:00 1:00 D
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Nassau -5:09:24 - LMT 1912 Mar 2
- -5:00 Bahamas E%sT 1976
- -5:00 US E%sT
-
-# Barbados
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Barb 1977 only - Jun 12 2:00 1:00 D
-Rule Barb 1977 1978 - Oct Sun>=1 2:00 0 S
-Rule Barb 1978 1980 - Apr Sun>=15 2:00 1:00 D
-Rule Barb 1979 only - Sep 30 2:00 0 S
-Rule Barb 1980 only - Sep 25 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Barbados -3:58:28 - LMT 1924 # Bridgetown
- -3:58:28 - BMT 1932 # Bridgetown Mean Time
- -4:00 Barb A%sT
-
-# Belize
-# Whitman entirely disagrees with Shanks; go with Shanks & Pottenger.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Belize 1918 1942 - Oct Sun>=2 0:00 0:30 HD
-Rule Belize 1919 1943 - Feb Sun>=9 0:00 0 S
-Rule Belize 1973 only - Dec 5 0:00 1:00 D
-Rule Belize 1974 only - Feb 9 0:00 0 S
-Rule Belize 1982 only - Dec 18 0:00 1:00 D
-Rule Belize 1983 only - Feb 12 0:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Belize -5:52:48 - LMT 1912 Apr
- -6:00 Belize C%sT
-
-# Bermuda
-
-# From Dan Jones, reporting in The Royal Gazette (2006-06-26):
-
-# Next year, however, clocks in the US will go forward on the second Sunday
-# in March, until the first Sunday in November. And, after the Time Zone
-# (Seasonal Variation) Bill 2006 was passed in the House of Assembly on
-# Friday, the same thing will happen in Bermuda.
-# http://www.theroyalgazette.com/apps/pbcs.dll/article?AID=/20060529/NEWS/105290135
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Atlantic/Bermuda -4:19:04 - LMT 1930 Jan 1 2:00 # Hamilton
- -4:00 - AST 1974 Apr 28 2:00
- -4:00 Bahamas A%sT 1976
- -4:00 US A%sT
-
-# Cayman Is
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
- -5:07:12 - KMT 1912 Feb # Kingston Mean Time
- -5:00 - EST
-
-# Costa Rica
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule CR 1979 1980 - Feb lastSun 0:00 1:00 D
-Rule CR 1979 1980 - Jun Sun>=1 0:00 0 S
-Rule CR 1991 1992 - Jan Sat>=15 0:00 1:00 D
-# IATA SSIM (1991-09) says the following was at 1:00;
-# go with Shanks & Pottenger.
-Rule CR 1991 only - Jul 1 0:00 0 S
-Rule CR 1992 only - Mar 15 0:00 0 S
-# There are too many San Joses elsewhere, so we'll use `Costa Rica'.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Costa_Rica -5:36:20 - LMT 1890 # San Jose
- -5:36:20 - SJMT 1921 Jan 15 # San Jose Mean Time
- -6:00 CR C%sT
-# Coco
-# no information; probably like America/Costa_Rica
-
-# Cuba
-
-# From Arthur David Olson (1999-03-29):
-# The 1999-03-28 exhibition baseball game held in Havana, Cuba, between
-# the Cuban National Team and the Baltimore Orioles was carried live on
-# the Orioles Radio Network, including affiliate WTOP in Washington, DC.
-# During the game, play-by-play announcer Jim Hunter noted that
-# "We'll be losing two hours of sleep...Cuba switched to Daylight Saving
-# Time today." (The "two hour" remark referred to losing one hour of
-# sleep on 1999-03-28--when the announcers were in Cuba as it switched
-# to DST--and one more hour on 1999-04-04--when the announcers will have
-# returned to Baltimore, which switches on that date.)
-
-# From Evert van der Veer via Steffen Thorsen (2004-10-28):
-# Cuba is not going back to standard time this year.
-# From Paul Eggert (2006-03-22):
-# http://www.granma.cu/ingles/2004/septiembre/juev30/41medid-i.html
-# says that it's due to a problem at the Antonio Guiteras
-# thermoelectric plant, and says "This October there will be no return
-# to normal hours (after daylight saving time)".
-# For now, let's assume that it's a temporary measure.
-
-# From Carlos A. Carnero Delgado (2005-11-12):
-# This year (just like in 2004-2005) there's no change in time zone
-# adjustment in Cuba. We will stay in daylight saving time:
-# http://www.granma.cu/espanol/2005/noviembre/mier9/horario.html
-
-# From Jesper Norgaard Welen (2006-10-21):
-# An article in GRANMA INTERNACIONAL claims that Cuba will end
-# the 3 years of permanent DST next weekend, see
-# http://www.granma.cu/ingles/2006/octubre/lun16/43horario.html
-# "On Saturday night, October 28 going into Sunday, October 29, at 01:00,
-# watches should be set back one hour -- going back to 00:00 hours -- returning
-# to the normal schedule....
-
-# From Paul Eggert (2007-03-02):
-# http://www.granma.cubaweb.cu/english/news/art89.html, dated yesterday,
-# says Cuban clocks will advance at midnight on March 10.
-# For lack of better information, assume Cuba will use US rules,
-# except that it switches at midnight standard time as usual.
-#
-# From Steffen Thorsen (2007-10-25):
-# Carlos Alberto Fonseca Arauz informed me that Cuba will end DST one week
-# earlier - on the last Sunday of October, just like in 2006.
-#
-# He supplied these references:
-#
-# http://www.prensalatina.com.mx/article.asp?ID=%7B4CC32C1B-A9F7-42FB-8A07-8631AFC923AF%7D&language=ES
-# http://actualidad.terra.es/sociedad/articulo/cuba_llama_ahorrar_energia_cambio_1957044.htm
-#
-# From Alex Kryvenishev (2007-10-25):
-# Here is also article from Granma (Cuba):
-#
-# [Regira] el Horario Normal desde el [proximo] domingo 28 de octubre
-# http://www.granma.cubaweb.cu/2007/10/24/nacional/artic07.html
-#
-# http://www.worldtimezone.com/dst_news/dst_news_cuba03.html
-
-# From Arthur David Olson (2008-03-09):
-# I'm in Maryland which is now observing United States Eastern Daylight
-# Time. At 9:44 local time I used RealPlayer to listen to
-# <a href="http://media.enet.cu/radioreloj">
-# http://media.enet.cu/radioreloj
-# </a>, a Cuban information station, and heard
-# the time announced as "ocho cuarenta y cuatro" ("eight forty-four"),
-# indicating that Cuba is still on standard time.
-
-# From Steffen Thorsen (2008-03-12):
-# It seems that Cuba will start DST on Sunday, 2007-03-16...
-# It was announced yesterday, according to this source (in Spanish):
-# <a href="http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm">
-# http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm
-# </a>
-#
-# Some more background information is posted here:
-# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html">
-# http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
-# </a>
-#
-# The article also says that Cuba has been observing DST since 1963,
-# while Shanks (and tzdata) has 1965 as the first date (except in the
-# 1940's). Many other web pages in Cuba also claim that it has been
-# observed since 1963, but with the exception of 1970 - an exception
-# which is not present in tzdata/Shanks. So there is a chance we need to
-# change some historic records as well.
-#
-# One example:
-# <a href="http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm">
-# http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm
-# </a>
-
-# From Jesper Norgaard Welen (2008-03-13):
-# The Cuban time change has just been confirmed on the most authoritative
-# web site, the Granma. Please check out
-# <a href="http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html">
-# http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html
-# </a>
-#
-# Basically as expected after Steffen Thorsens information, the change
-# will take place midnight between Saturday and Sunday.
-
-# From Arthur David Olson (2008-03-12):
-# Assume Sun>=15 (third Sunday) going forward.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Cuba 1928 only - Jun 10 0:00 1:00 D
-Rule Cuba 1928 only - Oct 10 0:00 0 S
-Rule Cuba 1940 1942 - Jun Sun>=1 0:00 1:00 D
-Rule Cuba 1940 1942 - Sep Sun>=1 0:00 0 S
-Rule Cuba 1945 1946 - Jun Sun>=1 0:00 1:00 D
-Rule Cuba 1945 1946 - Sep Sun>=1 0:00 0 S
-Rule Cuba 1965 only - Jun 1 0:00 1:00 D
-Rule Cuba 1965 only - Sep 30 0:00 0 S
-Rule Cuba 1966 only - May 29 0:00 1:00 D
-Rule Cuba 1966 only - Oct 2 0:00 0 S
-Rule Cuba 1967 only - Apr 8 0:00 1:00 D
-Rule Cuba 1967 1968 - Sep Sun>=8 0:00 0 S
-Rule Cuba 1968 only - Apr 14 0:00 1:00 D
-Rule Cuba 1969 1977 - Apr lastSun 0:00 1:00 D
-Rule Cuba 1969 1971 - Oct lastSun 0:00 0 S
-Rule Cuba 1972 1974 - Oct 8 0:00 0 S
-Rule Cuba 1975 1977 - Oct lastSun 0:00 0 S
-Rule Cuba 1978 only - May 7 0:00 1:00 D
-Rule Cuba 1978 1990 - Oct Sun>=8 0:00 0 S
-Rule Cuba 1979 1980 - Mar Sun>=15 0:00 1:00 D
-Rule Cuba 1981 1985 - May Sun>=5 0:00 1:00 D
-Rule Cuba 1986 1989 - Mar Sun>=14 0:00 1:00 D
-Rule Cuba 1990 1997 - Apr Sun>=1 0:00 1:00 D
-Rule Cuba 1991 1995 - Oct Sun>=8 0:00s 0 S
-Rule Cuba 1996 only - Oct 6 0:00s 0 S
-Rule Cuba 1997 only - Oct 12 0:00s 0 S
-Rule Cuba 1998 1999 - Mar lastSun 0:00s 1:00 D
-Rule Cuba 1998 2003 - Oct lastSun 0:00s 0 S
-Rule Cuba 2000 2006 - Apr Sun>=1 0:00s 1:00 D
-Rule Cuba 2006 max - Oct lastSun 0:00s 0 S
-Rule Cuba 2007 only - Mar Sun>=8 0:00s 1:00 D
-Rule Cuba 2008 max - Mar Sun>=15 0:00s 1:00 D
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Havana -5:29:28 - LMT 1890
- -5:29:36 - HMT 1925 Jul 19 12:00 # Havana MT
- -5:00 Cuba C%sT
-
-# Dominica
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Dominica -4:05:36 - LMT 1911 Jul 1 0:01 # Roseau
- -4:00 - AST
-
-# Dominican Republic
-
-# From Steffen Thorsen (2000-10-30):
-# Enrique Morales reported to me that the Dominican Republic has changed the
-# time zone to Eastern Standard Time as of Sunday 29 at 2 am....
-# http://www.listin.com.do/antes/261000/republica/princi.html
-
-# From Paul Eggert (2000-12-04):
-# That URL (2000-10-26, in Spanish) says they planned to use US-style DST.
-
-# From Rives McDow (2000-12-01):
-# Dominican Republic changed its mind and presidential decree on Tuesday,
-# November 28, 2000, with a new decree. On Sunday, December 3 at 1:00 AM the
-# Dominican Republic will be reverting to 8 hours from the International Date
-# Line, and will not be using DST in the foreseeable future. The reason they
-# decided to use DST was to be in synch with Puerto Rico, who was also going
-# to implement DST. When Puerto Rico didn't implement DST, the president
-# decided to revert.
-
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule DR 1966 only - Oct 30 0:00 1:00 D
-Rule DR 1967 only - Feb 28 0:00 0 S
-Rule DR 1969 1973 - Oct lastSun 0:00 0:30 HD
-Rule DR 1970 only - Feb 21 0:00 0 S
-Rule DR 1971 only - Jan 20 0:00 0 S
-Rule DR 1972 1974 - Jan 21 0:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Santo_Domingo -4:39:36 - LMT 1890
- -4:40 - SDMT 1933 Apr 1 12:00 # S. Dom. MT
- -5:00 DR E%sT 1974 Oct 27
- -4:00 - AST 2000 Oct 29 02:00
- -5:00 US E%sT 2000 Dec 3 01:00
- -4:00 - AST
-
-# El Salvador
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Salv 1987 1988 - May Sun>=1 0:00 1:00 D
-Rule Salv 1987 1988 - Sep lastSun 0:00 0 S
-# There are too many San Salvadors elsewhere, so use America/El_Salvador
-# instead of America/San_Salvador.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador
- -6:00 Salv C%sT
-
-# Grenada
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Grenada -4:07:00 - LMT 1911 Jul # St George's
- -4:00 - AST
-
-# Guadeloupe
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Guadeloupe -4:06:08 - LMT 1911 Jun 8 # Pointe a Pitre
- -4:00 - AST
-# St Barthelemy
-Link America/Guadeloupe America/St_Barthelemy
-# St Martin (French part)
-Link America/Guadeloupe America/Marigot
-
-# Guatemala
-#
-# From Gwillim Law (2006-04-22), after a heads-up from Oscar van Vlijmen:
-# Diario Co Latino, at
-# http://www.diariocolatino.com/internacionales/detalles.asp?NewsID=8079,
-# says in an article dated 2006-04-19 that the Guatemalan government had
-# decided on that date to advance official time by 60 minutes, to lessen the
-# impact of the elevated cost of oil.... Daylight saving time will last from
-# 2006-04-29 24:00 (Guatemalan standard time) to 2006-09-30 (time unspecified).
-# From Paul Eggert (2006-06-22):
-# The Ministry of Energy and Mines, press release CP-15/2006
-# (2006-04-19), says DST ends at 24:00. See
-# <http://www.sieca.org.gt/Sitio_publico/Energeticos/Doc/Medidas/Cambio_Horario_Nac_190406.pdf>.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Guat 1973 only - Nov 25 0:00 1:00 D
-Rule Guat 1974 only - Feb 24 0:00 0 S
-Rule Guat 1983 only - May 21 0:00 1:00 D
-Rule Guat 1983 only - Sep 22 0:00 0 S
-Rule Guat 1991 only - Mar 23 0:00 1:00 D
-Rule Guat 1991 only - Sep 7 0:00 0 S
-Rule Guat 2006 only - Apr 30 0:00 1:00 D
-Rule Guat 2006 only - Oct 1 0:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Guatemala -6:02:04 - LMT 1918 Oct 5
- -6:00 Guat C%sT
-
-# Haiti
-# From Gwillim Law (2005-04-15):
-# Risto O. Nykanen wrote me that Haiti is now on DST.
-# I searched for confirmation, and I found a
-# <a href="http://www.haitianconsulate.org/time.doc"> press release
-# on the Web page of the Haitian Consulate in Chicago (2005-03-31),
-# </a>. Translated from French, it says:
-#
-# "The Prime Minister's Communication Office notifies the public in general
-# and the press in particular that, following a decision of the Interior
-# Ministry and the Territorial Collectivities [I suppose that means the
-# provinces], Haiti will move to Eastern Daylight Time in the night from next
-# Saturday the 2nd to Sunday the 3rd.
-#
-# "Consequently, the Prime Minister's Communication Office wishes to inform
-# the population that the country's clocks will be set forward one hour
-# starting at midnight. This provision will hold until the last Saturday in
-# October 2005.
-#
-# "Port-au-Prince, March 31, 2005"
-#
-# From Steffen Thorsen (2006-04-04):
-# I have been informed by users that Haiti observes DST this year like
-# last year, so the current "only" rule for 2005 might be changed to a
-# "max" rule or to last until 2006. (Who knows if they will observe DST
-# next year or if they will extend their DST like US/Canada next year).
-#
-# I have found this article about it (in French):
-# http://www.haitipressnetwork.com/news.cfm?articleID=7612
-#
-# The reason seems to be an energy crisis.
-
-# From Stephen Colebourne (2007-02-22):
-# Some IATA info: Haiti won't be having DST in 2007.
-
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Haiti 1983 only - May 8 0:00 1:00 D
-Rule Haiti 1984 1987 - Apr lastSun 0:00 1:00 D
-Rule Haiti 1983 1987 - Oct lastSun 0:00 0 S
-# Shanks & Pottenger say AT is 2:00, but IATA SSIM (1991/1997) says 1:00s.
-# Go with IATA.
-Rule Haiti 1988 1997 - Apr Sun>=1 1:00s 1:00 D
-Rule Haiti 1988 1997 - Oct lastSun 1:00s 0 S
-Rule Haiti 2005 2006 - Apr Sun>=1 0:00 1:00 D
-Rule Haiti 2005 2006 - Oct lastSun 0:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Port-au-Prince -4:49:20 - LMT 1890
- -4:49 - PPMT 1917 Jan 24 12:00 # P-a-P MT
- -5:00 Haiti E%sT
-
-# Honduras
-# Shanks & Pottenger say 1921 Jan 1; go with Whitman's more precise Apr 1.
-
-# From Paul Eggert (2006-05-05):
-# worldtimezone.com reports a 2006-05-02 Spanish-language AP article
-# saying Honduras will start using DST midnight Saturday, effective 4
-# months until September. La Tribuna reported today
-# <http://www.latribuna.hn/99299.html> that Manuel Zelaya, the president
-# of Honduras, refused to back down on this.
-
-# From Jesper Norgaard Welen (2006-08-08):
-# It seems that Honduras has returned from DST to standard time this Monday at
-# 00:00 hours (prolonging Sunday to 25 hours duration).
-# http://www.worldtimezone.com/dst_news/dst_news_honduras04.html
-
-# From Paul Eggert (2006-08-08):
-# Also see Diario El Heraldo, The country returns to standard time (2006-08-08)
-# <http://www.elheraldo.hn/nota.php?nid=54941&sec=12>.
-# It mentions executive decree 18-2006.
-
-# From Steffen Thorsen (2006-08-17):
-# Honduras will observe DST from 2007 to 2009, exact dates are not
-# published, I have located this authoritative source:
-# http://www.presidencia.gob.hn/noticia.aspx?nId=47
-
-# From Steffen Thorsen (2007-03-30):
-# http://www.laprensahn.com/pais_nota.php?id04962=7386
-# So it seems that Honduras will not enter DST this year....
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Hond 1987 1988 - May Sun>=1 0:00 1:00 D
-Rule Hond 1987 1988 - Sep lastSun 0:00 0 S
-Rule Hond 2006 only - May Sun>=1 0:00 1:00 D
-Rule Hond 2006 only - Aug Mon>=1 0:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Tegucigalpa -5:48:52 - LMT 1921 Apr
- -6:00 Hond C%sT
-#
-# Great Swan I ceded by US to Honduras in 1972
-
-# Jamaica
-
-# From Bob Devine (1988-01-28):
-# Follows US rules.
-
-# From U. S. Naval Observatory (1989-01-19):
-# JAMAICA 5 H BEHIND UTC
-
-# From Shanks & Pottenger:
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Jamaica -5:07:12 - LMT 1890 # Kingston
- -5:07:12 - KMT 1912 Feb # Kingston Mean Time
- -5:00 - EST 1974 Apr 28 2:00
- -5:00 US E%sT 1984
- -5:00 - EST
-
-# Martinique
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France
- -4:04:20 - FFMT 1911 May # Fort-de-France MT
- -4:00 - AST 1980 Apr 6
- -4:00 1:00 ADT 1980 Sep 28
- -4:00 - AST
-
-# Montserrat
-# From Paul Eggert (2006-03-22):
-# In 1995 volcanic eruptions forced evacuation of Plymouth, the capital.
-# world.gazetteer.com says Cork Hill is the most populous location now.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Montserrat -4:08:52 - LMT 1911 Jul 1 0:01 # Cork Hill
- -4:00 - AST
-
-# Nicaragua
-#
-# This uses Shanks & Pottenger for times before 2005.
-#
-# From Steffen Thorsen (2005-04-12):
-# I've got reports from 8 different people that Nicaragua just started
-# DST on Sunday 2005-04-10, in order to save energy because of
-# expensive petroleum. The exact end date for DST is not yet
-# announced, only "September" but some sites also say "mid-September".
-# Some background information is available on the President's official site:
-# http://www.presidencia.gob.ni/Presidencia/Files_index/Secretaria/Notas%20de%20Prensa/Presidente/2005/ABRIL/Gobierno-de-nicaragua-adelanta-hora-oficial-06abril.htm
-# The Decree, no 23-2005 is available here:
-# http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2005/Decreto%2023-2005%20Se%20adelanta%20en%20una%20hora%20en%20todo%20el%20territorio%20nacional%20apartir%20de%20las%2024horas%20del%2009%20de%20Abril.pdf
-#
-# From Paul Eggert (2005-05-01):
-# The decree doesn't say anything about daylight saving, but for now let's
-# assume that it is daylight saving....
-#
-# From Gwillim Law (2005-04-21):
-# The Associated Press story on the time change, which can be found at
-# http://www.lapalmainteractivo.com/guias/content/gen/ap/America_Latina/AMC_GEN_NICARAGUA_HORA.html
-# and elsewhere, says (fifth paragraph, translated from Spanish): "The last
-# time that a change of clocks was applied to save energy was in the year 2000
-# during the Arnoldo Aleman administration."...
-# The northamerica file says that Nicaragua has been on UTC-6 continuously
-# since December 1998. I wasn't able to find any details of Nicaraguan time
-# changes in 2000. Perhaps a note could be added to the northamerica file, to
-# the effect that we have indirect evidence that DST was observed in 2000.
-#
-# From Jesper Norgaard Welen (2005-11-02):
-# Nicaragua left DST the 2005-10-02 at 00:00 (local time).
-# http://www.presidencia.gob.ni/presidencia/files_index/secretaria/comunicados/2005/septiembre/26septiembre-cambio-hora.htm
-# (2005-09-26)
-#
-# From Jesper Norgaard Welen (2006-05-05):
-# http://www.elnuevodiario.com.ni/2006/05/01/nacionales/18410
-# (my informal translation)
-# By order of the president of the republic, Enrique Bolanos, Nicaragua
-# advanced by sixty minutes their official time, yesterday at 2 in the
-# morning, and will stay that way until 30.th. of september.
-#
-# From Jesper Norgaard Welen (2006-09-30):
-# http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2006/D-063-2006P-PRN-Cambio-Hora.pdf
-# My informal translation runs:
-# The natural sun time is restored in all the national territory, in that the
-# time is returned one hour at 01:00 am of October 1 of 2006.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Nic 1979 1980 - Mar Sun>=16 0:00 1:00 D
-Rule Nic 1979 1980 - Jun Mon>=23 0:00 0 S
-Rule Nic 2005 only - Apr 10 0:00 1:00 D
-Rule Nic 2005 only - Oct Sun>=1 0:00 0 S
-Rule Nic 2006 only - Apr 30 2:00 1:00 D
-Rule Nic 2006 only - Oct Sun>=1 1:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Managua -5:45:08 - LMT 1890
- -5:45:12 - MMT 1934 Jun 23 # Managua Mean Time?
- -6:00 - CST 1973 May
- -5:00 - EST 1975 Feb 16
- -6:00 Nic C%sT 1992 Jan 1 4:00
- -5:00 - EST 1992 Sep 24
- -6:00 - CST 1993
- -5:00 - EST 1997
- -6:00 Nic C%sT
-
-# Panama
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Panama -5:18:08 - LMT 1890
- -5:19:36 - CMT 1908 Apr 22 # Colon Mean Time
- -5:00 - EST
-
-# Puerto Rico
-# There are too many San Juans elsewhere, so we'll use `Puerto_Rico'.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan
- -4:00 - AST 1942 May 3
- -4:00 US A%sT 1946
- -4:00 - AST
-
-# St Kitts-Nevis
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/St_Kitts -4:10:52 - LMT 1912 Mar 2 # Basseterre
- -4:00 - AST
-
-# St Lucia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/St_Lucia -4:04:00 - LMT 1890 # Castries
- -4:04:00 - CMT 1912 # Castries Mean Time
- -4:00 - AST
-
-# St Pierre and Miquelon
-# There are too many St Pierres elsewhere, so we'll use `Miquelon'.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre
- -4:00 - AST 1980 May
- -3:00 - PMST 1987 # Pierre & Miquelon Time
- -3:00 Canada PM%sT
-
-# St Vincent and the Grenadines
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/St_Vincent -4:04:56 - LMT 1890 # Kingstown
- -4:04:56 - KMT 1912 # Kingstown Mean Time
- -4:00 - AST
-
-# Turks and Caicos
-#
-# From Chris Dunn in
-# <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007>
-# (2007-03-15): In the Turks & Caicos Islands (America/Grand_Turk) the
-# daylight saving dates for time changes have been adjusted to match
-# the recent U.S. change of dates.
-#
-# From Brian Inglis (2007-04-28):
-# http://www.turksandcaicos.tc/calendar/index.htm [2007-04-26]
-# there is an entry for Nov 4 "Daylight Savings Time Ends 2007" and three
-# rows before that there is an out of date entry for Oct:
-# "Eastern Standard Times Begins 2007
-# Clocks are set back one hour at 2:00 a.m. local Daylight Saving Time"
-# indicating that the normal ET rules are followed.
-#
-# From Paul Eggert (2006-05-01):
-# Shanks & Pottenger say they use US DST rules, but IATA SSIM (1991/1998)
-# says they switch at midnight. Go with Shanks & Pottenger.
-#
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule TC 1979 1986 - Apr lastSun 2:00 1:00 D
-Rule TC 1979 2006 - Oct lastSun 2:00 0 S
-Rule TC 1987 2006 - Apr Sun>=1 2:00 1:00 D
-Rule TC 2007 max - Mar Sun>=8 2:00 1:00 D
-Rule TC 2007 max - Nov Sun>=1 2:00 0 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Grand_Turk -4:44:32 - LMT 1890
- -5:07:12 - KMT 1912 Feb # Kingston Mean Time
- -5:00 TC E%sT
-
-# British Virgin Is
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Tortola -4:18:28 - LMT 1911 Jul # Road Town
- -4:00 - AST
-
-# Virgin Is
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/St_Thomas -4:19:44 - LMT 1911 Jul # Charlotte Amalie
- -4:00 - AST
diff --git a/tools/zoneinfo/tzdata2008h/pacificnew b/tools/zoneinfo/tzdata2008h/pacificnew
deleted file mode 100644
index 667940b..0000000
--- a/tools/zoneinfo/tzdata2008h/pacificnew
+++ /dev/null
@@ -1,26 +0,0 @@
-# @(#)pacificnew 8.1
-
-# From Arthur David Olson (1989-04-05):
-# On 1989-04-05, the U. S. House of Representatives passed (238-154) a bill
-# establishing "Pacific Presidential Election Time"; it was not acted on
-# by the Senate or signed into law by the President.
-# You might want to change the "PE" (Presidential Election) below to
-# "Q" (Quadrennial) to maintain three-character zone abbreviations.
-# If you're really conservative, you might want to change it to "D".
-# Avoid "L" (Leap Year), which won't be true in 2100.
-
-# If Presidential Election Time is ever established, replace "XXXX" below
-# with the year the law takes effect and uncomment the "##" lines.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-## Rule Twilite XXXX max - Apr Sun>=1 2:00 1:00 D
-## Rule Twilite XXXX max uspres Oct lastSun 2:00 1:00 PE
-## Rule Twilite XXXX max uspres Nov Sun>=7 2:00 0 S
-## Rule Twilite XXXX max nonpres Oct lastSun 2:00 0 S
-
-# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
-## Zone America/Los_Angeles-PET -8:00 US P%sT XXXX
-## -8:00 Twilite P%sT
-
-# For now...
-Link America/Los_Angeles US/Pacific-New ##
diff --git a/tools/zoneinfo/tzdata2008h/solar87 b/tools/zoneinfo/tzdata2008h/solar87
deleted file mode 100644
index 7183932..0000000
--- a/tools/zoneinfo/tzdata2008h/solar87
+++ /dev/null
@@ -1,388 +0,0 @@
-# @(#)solar87 8.1
-
-# So much for footnotes about Saudi Arabia.
-# Apparent noon times below are for Riyadh; your mileage will vary.
-# Times were computed using formulas in the U.S. Naval Observatory's
-# Almanac for Computers 1987; the formulas "will give EqT to an accuracy of
-# [plus or minus two] seconds during the current year."
-#
-# Rounding to the nearest five seconds results in fewer than
-# 256 different "time types"--a limit that's faced because time types are
-# stored on disk as unsigned chars.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule sol87 1987 only - Jan 1 12:03:20s -0:03:20 -
-Rule sol87 1987 only - Jan 2 12:03:50s -0:03:50 -
-Rule sol87 1987 only - Jan 3 12:04:15s -0:04:15 -
-Rule sol87 1987 only - Jan 4 12:04:45s -0:04:45 -
-Rule sol87 1987 only - Jan 5 12:05:10s -0:05:10 -
-Rule sol87 1987 only - Jan 6 12:05:40s -0:05:40 -
-Rule sol87 1987 only - Jan 7 12:06:05s -0:06:05 -
-Rule sol87 1987 only - Jan 8 12:06:30s -0:06:30 -
-Rule sol87 1987 only - Jan 9 12:06:55s -0:06:55 -
-Rule sol87 1987 only - Jan 10 12:07:20s -0:07:20 -
-Rule sol87 1987 only - Jan 11 12:07:45s -0:07:45 -
-Rule sol87 1987 only - Jan 12 12:08:10s -0:08:10 -
-Rule sol87 1987 only - Jan 13 12:08:30s -0:08:30 -
-Rule sol87 1987 only - Jan 14 12:08:55s -0:08:55 -
-Rule sol87 1987 only - Jan 15 12:09:15s -0:09:15 -
-Rule sol87 1987 only - Jan 16 12:09:35s -0:09:35 -
-Rule sol87 1987 only - Jan 17 12:09:55s -0:09:55 -
-Rule sol87 1987 only - Jan 18 12:10:15s -0:10:15 -
-Rule sol87 1987 only - Jan 19 12:10:35s -0:10:35 -
-Rule sol87 1987 only - Jan 20 12:10:55s -0:10:55 -
-Rule sol87 1987 only - Jan 21 12:11:10s -0:11:10 -
-Rule sol87 1987 only - Jan 22 12:11:30s -0:11:30 -
-Rule sol87 1987 only - Jan 23 12:11:45s -0:11:45 -
-Rule sol87 1987 only - Jan 24 12:12:00s -0:12:00 -
-Rule sol87 1987 only - Jan 25 12:12:15s -0:12:15 -
-Rule sol87 1987 only - Jan 26 12:12:30s -0:12:30 -
-Rule sol87 1987 only - Jan 27 12:12:40s -0:12:40 -
-Rule sol87 1987 only - Jan 28 12:12:55s -0:12:55 -
-Rule sol87 1987 only - Jan 29 12:13:05s -0:13:05 -
-Rule sol87 1987 only - Jan 30 12:13:15s -0:13:15 -
-Rule sol87 1987 only - Jan 31 12:13:25s -0:13:25 -
-Rule sol87 1987 only - Feb 1 12:13:35s -0:13:35 -
-Rule sol87 1987 only - Feb 2 12:13:40s -0:13:40 -
-Rule sol87 1987 only - Feb 3 12:13:50s -0:13:50 -
-Rule sol87 1987 only - Feb 4 12:13:55s -0:13:55 -
-Rule sol87 1987 only - Feb 5 12:14:00s -0:14:00 -
-Rule sol87 1987 only - Feb 6 12:14:05s -0:14:05 -
-Rule sol87 1987 only - Feb 7 12:14:10s -0:14:10 -
-Rule sol87 1987 only - Feb 8 12:14:10s -0:14:10 -
-Rule sol87 1987 only - Feb 9 12:14:15s -0:14:15 -
-Rule sol87 1987 only - Feb 10 12:14:15s -0:14:15 -
-Rule sol87 1987 only - Feb 11 12:14:15s -0:14:15 -
-Rule sol87 1987 only - Feb 12 12:14:15s -0:14:15 -
-Rule sol87 1987 only - Feb 13 12:14:15s -0:14:15 -
-Rule sol87 1987 only - Feb 14 12:14:15s -0:14:15 -
-Rule sol87 1987 only - Feb 15 12:14:10s -0:14:10 -
-Rule sol87 1987 only - Feb 16 12:14:10s -0:14:10 -
-Rule sol87 1987 only - Feb 17 12:14:05s -0:14:05 -
-Rule sol87 1987 only - Feb 18 12:14:00s -0:14:00 -
-Rule sol87 1987 only - Feb 19 12:13:55s -0:13:55 -
-Rule sol87 1987 only - Feb 20 12:13:50s -0:13:50 -
-Rule sol87 1987 only - Feb 21 12:13:45s -0:13:45 -
-Rule sol87 1987 only - Feb 22 12:13:35s -0:13:35 -
-Rule sol87 1987 only - Feb 23 12:13:30s -0:13:30 -
-Rule sol87 1987 only - Feb 24 12:13:20s -0:13:20 -
-Rule sol87 1987 only - Feb 25 12:13:10s -0:13:10 -
-Rule sol87 1987 only - Feb 26 12:13:00s -0:13:00 -
-Rule sol87 1987 only - Feb 27 12:12:50s -0:12:50 -
-Rule sol87 1987 only - Feb 28 12:12:40s -0:12:40 -
-Rule sol87 1987 only - Mar 1 12:12:30s -0:12:30 -
-Rule sol87 1987 only - Mar 2 12:12:20s -0:12:20 -
-Rule sol87 1987 only - Mar 3 12:12:05s -0:12:05 -
-Rule sol87 1987 only - Mar 4 12:11:55s -0:11:55 -
-Rule sol87 1987 only - Mar 5 12:11:40s -0:11:40 -
-Rule sol87 1987 only - Mar 6 12:11:25s -0:11:25 -
-Rule sol87 1987 only - Mar 7 12:11:15s -0:11:15 -
-Rule sol87 1987 only - Mar 8 12:11:00s -0:11:00 -
-Rule sol87 1987 only - Mar 9 12:10:45s -0:10:45 -
-Rule sol87 1987 only - Mar 10 12:10:30s -0:10:30 -
-Rule sol87 1987 only - Mar 11 12:10:15s -0:10:15 -
-Rule sol87 1987 only - Mar 12 12:09:55s -0:09:55 -
-Rule sol87 1987 only - Mar 13 12:09:40s -0:09:40 -
-Rule sol87 1987 only - Mar 14 12:09:25s -0:09:25 -
-Rule sol87 1987 only - Mar 15 12:09:10s -0:09:10 -
-Rule sol87 1987 only - Mar 16 12:08:50s -0:08:50 -
-Rule sol87 1987 only - Mar 17 12:08:35s -0:08:35 -
-Rule sol87 1987 only - Mar 18 12:08:15s -0:08:15 -
-Rule sol87 1987 only - Mar 19 12:08:00s -0:08:00 -
-Rule sol87 1987 only - Mar 20 12:07:40s -0:07:40 -
-Rule sol87 1987 only - Mar 21 12:07:25s -0:07:25 -
-Rule sol87 1987 only - Mar 22 12:07:05s -0:07:05 -
-Rule sol87 1987 only - Mar 23 12:06:50s -0:06:50 -
-Rule sol87 1987 only - Mar 24 12:06:30s -0:06:30 -
-Rule sol87 1987 only - Mar 25 12:06:10s -0:06:10 -
-Rule sol87 1987 only - Mar 26 12:05:55s -0:05:55 -
-Rule sol87 1987 only - Mar 27 12:05:35s -0:05:35 -
-Rule sol87 1987 only - Mar 28 12:05:15s -0:05:15 -
-Rule sol87 1987 only - Mar 29 12:05:00s -0:05:00 -
-Rule sol87 1987 only - Mar 30 12:04:40s -0:04:40 -
-Rule sol87 1987 only - Mar 31 12:04:25s -0:04:25 -
-Rule sol87 1987 only - Apr 1 12:04:05s -0:04:05 -
-Rule sol87 1987 only - Apr 2 12:03:45s -0:03:45 -
-Rule sol87 1987 only - Apr 3 12:03:30s -0:03:30 -
-Rule sol87 1987 only - Apr 4 12:03:10s -0:03:10 -
-Rule sol87 1987 only - Apr 5 12:02:55s -0:02:55 -
-Rule sol87 1987 only - Apr 6 12:02:35s -0:02:35 -
-Rule sol87 1987 only - Apr 7 12:02:20s -0:02:20 -
-Rule sol87 1987 only - Apr 8 12:02:05s -0:02:05 -
-Rule sol87 1987 only - Apr 9 12:01:45s -0:01:45 -
-Rule sol87 1987 only - Apr 10 12:01:30s -0:01:30 -
-Rule sol87 1987 only - Apr 11 12:01:15s -0:01:15 -
-Rule sol87 1987 only - Apr 12 12:00:55s -0:00:55 -
-Rule sol87 1987 only - Apr 13 12:00:40s -0:00:40 -
-Rule sol87 1987 only - Apr 14 12:00:25s -0:00:25 -
-Rule sol87 1987 only - Apr 15 12:00:10s -0:00:10 -
-Rule sol87 1987 only - Apr 16 11:59:55s 0:00:05 -
-Rule sol87 1987 only - Apr 17 11:59:45s 0:00:15 -
-Rule sol87 1987 only - Apr 18 11:59:30s 0:00:30 -
-Rule sol87 1987 only - Apr 19 11:59:15s 0:00:45 -
-Rule sol87 1987 only - Apr 20 11:59:05s 0:00:55 -
-Rule sol87 1987 only - Apr 21 11:58:50s 0:01:10 -
-Rule sol87 1987 only - Apr 22 11:58:40s 0:01:20 -
-Rule sol87 1987 only - Apr 23 11:58:25s 0:01:35 -
-Rule sol87 1987 only - Apr 24 11:58:15s 0:01:45 -
-Rule sol87 1987 only - Apr 25 11:58:05s 0:01:55 -
-Rule sol87 1987 only - Apr 26 11:57:55s 0:02:05 -
-Rule sol87 1987 only - Apr 27 11:57:45s 0:02:15 -
-Rule sol87 1987 only - Apr 28 11:57:35s 0:02:25 -
-Rule sol87 1987 only - Apr 29 11:57:25s 0:02:35 -
-Rule sol87 1987 only - Apr 30 11:57:15s 0:02:45 -
-Rule sol87 1987 only - May 1 11:57:10s 0:02:50 -
-Rule sol87 1987 only - May 2 11:57:00s 0:03:00 -
-Rule sol87 1987 only - May 3 11:56:55s 0:03:05 -
-Rule sol87 1987 only - May 4 11:56:50s 0:03:10 -
-Rule sol87 1987 only - May 5 11:56:45s 0:03:15 -
-Rule sol87 1987 only - May 6 11:56:40s 0:03:20 -
-Rule sol87 1987 only - May 7 11:56:35s 0:03:25 -
-Rule sol87 1987 only - May 8 11:56:30s 0:03:30 -
-Rule sol87 1987 only - May 9 11:56:25s 0:03:35 -
-Rule sol87 1987 only - May 10 11:56:25s 0:03:35 -
-Rule sol87 1987 only - May 11 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 12 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 13 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 14 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 15 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 16 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 17 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 18 11:56:20s 0:03:40 -
-Rule sol87 1987 only - May 19 11:56:25s 0:03:35 -
-Rule sol87 1987 only - May 20 11:56:25s 0:03:35 -
-Rule sol87 1987 only - May 21 11:56:30s 0:03:30 -
-Rule sol87 1987 only - May 22 11:56:35s 0:03:25 -
-Rule sol87 1987 only - May 23 11:56:40s 0:03:20 -
-Rule sol87 1987 only - May 24 11:56:45s 0:03:15 -
-Rule sol87 1987 only - May 25 11:56:50s 0:03:10 -
-Rule sol87 1987 only - May 26 11:56:55s 0:03:05 -
-Rule sol87 1987 only - May 27 11:57:00s 0:03:00 -
-Rule sol87 1987 only - May 28 11:57:10s 0:02:50 -
-Rule sol87 1987 only - May 29 11:57:15s 0:02:45 -
-Rule sol87 1987 only - May 30 11:57:25s 0:02:35 -
-Rule sol87 1987 only - May 31 11:57:30s 0:02:30 -
-Rule sol87 1987 only - Jun 1 11:57:40s 0:02:20 -
-Rule sol87 1987 only - Jun 2 11:57:50s 0:02:10 -
-Rule sol87 1987 only - Jun 3 11:58:00s 0:02:00 -
-Rule sol87 1987 only - Jun 4 11:58:10s 0:01:50 -
-Rule sol87 1987 only - Jun 5 11:58:20s 0:01:40 -
-Rule sol87 1987 only - Jun 6 11:58:30s 0:01:30 -
-Rule sol87 1987 only - Jun 7 11:58:40s 0:01:20 -
-Rule sol87 1987 only - Jun 8 11:58:50s 0:01:10 -
-Rule sol87 1987 only - Jun 9 11:59:05s 0:00:55 -
-Rule sol87 1987 only - Jun 10 11:59:15s 0:00:45 -
-Rule sol87 1987 only - Jun 11 11:59:30s 0:00:30 -
-Rule sol87 1987 only - Jun 12 11:59:40s 0:00:20 -
-Rule sol87 1987 only - Jun 13 11:59:50s 0:00:10 -
-Rule sol87 1987 only - Jun 14 12:00:05s -0:00:05 -
-Rule sol87 1987 only - Jun 15 12:00:15s -0:00:15 -
-Rule sol87 1987 only - Jun 16 12:00:30s -0:00:30 -
-Rule sol87 1987 only - Jun 17 12:00:45s -0:00:45 -
-Rule sol87 1987 only - Jun 18 12:00:55s -0:00:55 -
-Rule sol87 1987 only - Jun 19 12:01:10s -0:01:10 -
-Rule sol87 1987 only - Jun 20 12:01:20s -0:01:20 -
-Rule sol87 1987 only - Jun 21 12:01:35s -0:01:35 -
-Rule sol87 1987 only - Jun 22 12:01:50s -0:01:50 -
-Rule sol87 1987 only - Jun 23 12:02:00s -0:02:00 -
-Rule sol87 1987 only - Jun 24 12:02:15s -0:02:15 -
-Rule sol87 1987 only - Jun 25 12:02:25s -0:02:25 -
-Rule sol87 1987 only - Jun 26 12:02:40s -0:02:40 -
-Rule sol87 1987 only - Jun 27 12:02:50s -0:02:50 -
-Rule sol87 1987 only - Jun 28 12:03:05s -0:03:05 -
-Rule sol87 1987 only - Jun 29 12:03:15s -0:03:15 -
-Rule sol87 1987 only - Jun 30 12:03:30s -0:03:30 -
-Rule sol87 1987 only - Jul 1 12:03:40s -0:03:40 -
-Rule sol87 1987 only - Jul 2 12:03:50s -0:03:50 -
-Rule sol87 1987 only - Jul 3 12:04:05s -0:04:05 -
-Rule sol87 1987 only - Jul 4 12:04:15s -0:04:15 -
-Rule sol87 1987 only - Jul 5 12:04:25s -0:04:25 -
-Rule sol87 1987 only - Jul 6 12:04:35s -0:04:35 -
-Rule sol87 1987 only - Jul 7 12:04:45s -0:04:45 -
-Rule sol87 1987 only - Jul 8 12:04:55s -0:04:55 -
-Rule sol87 1987 only - Jul 9 12:05:05s -0:05:05 -
-Rule sol87 1987 only - Jul 10 12:05:15s -0:05:15 -
-Rule sol87 1987 only - Jul 11 12:05:20s -0:05:20 -
-Rule sol87 1987 only - Jul 12 12:05:30s -0:05:30 -
-Rule sol87 1987 only - Jul 13 12:05:40s -0:05:40 -
-Rule sol87 1987 only - Jul 14 12:05:45s -0:05:45 -
-Rule sol87 1987 only - Jul 15 12:05:50s -0:05:50 -
-Rule sol87 1987 only - Jul 16 12:06:00s -0:06:00 -
-Rule sol87 1987 only - Jul 17 12:06:05s -0:06:05 -
-Rule sol87 1987 only - Jul 18 12:06:10s -0:06:10 -
-Rule sol87 1987 only - Jul 19 12:06:15s -0:06:15 -
-Rule sol87 1987 only - Jul 20 12:06:15s -0:06:15 -
-Rule sol87 1987 only - Jul 21 12:06:20s -0:06:20 -
-Rule sol87 1987 only - Jul 22 12:06:25s -0:06:25 -
-Rule sol87 1987 only - Jul 23 12:06:25s -0:06:25 -
-Rule sol87 1987 only - Jul 24 12:06:25s -0:06:25 -
-Rule sol87 1987 only - Jul 25 12:06:30s -0:06:30 -
-Rule sol87 1987 only - Jul 26 12:06:30s -0:06:30 -
-Rule sol87 1987 only - Jul 27 12:06:30s -0:06:30 -
-Rule sol87 1987 only - Jul 28 12:06:30s -0:06:30 -
-Rule sol87 1987 only - Jul 29 12:06:25s -0:06:25 -
-Rule sol87 1987 only - Jul 30 12:06:25s -0:06:25 -
-Rule sol87 1987 only - Jul 31 12:06:25s -0:06:25 -
-Rule sol87 1987 only - Aug 1 12:06:20s -0:06:20 -
-Rule sol87 1987 only - Aug 2 12:06:15s -0:06:15 -
-Rule sol87 1987 only - Aug 3 12:06:10s -0:06:10 -
-Rule sol87 1987 only - Aug 4 12:06:05s -0:06:05 -
-Rule sol87 1987 only - Aug 5 12:06:00s -0:06:00 -
-Rule sol87 1987 only - Aug 6 12:05:55s -0:05:55 -
-Rule sol87 1987 only - Aug 7 12:05:50s -0:05:50 -
-Rule sol87 1987 only - Aug 8 12:05:40s -0:05:40 -
-Rule sol87 1987 only - Aug 9 12:05:35s -0:05:35 -
-Rule sol87 1987 only - Aug 10 12:05:25s -0:05:25 -
-Rule sol87 1987 only - Aug 11 12:05:15s -0:05:15 -
-Rule sol87 1987 only - Aug 12 12:05:05s -0:05:05 -
-Rule sol87 1987 only - Aug 13 12:04:55s -0:04:55 -
-Rule sol87 1987 only - Aug 14 12:04:45s -0:04:45 -
-Rule sol87 1987 only - Aug 15 12:04:35s -0:04:35 -
-Rule sol87 1987 only - Aug 16 12:04:25s -0:04:25 -
-Rule sol87 1987 only - Aug 17 12:04:10s -0:04:10 -
-Rule sol87 1987 only - Aug 18 12:04:00s -0:04:00 -
-Rule sol87 1987 only - Aug 19 12:03:45s -0:03:45 -
-Rule sol87 1987 only - Aug 20 12:03:30s -0:03:30 -
-Rule sol87 1987 only - Aug 21 12:03:15s -0:03:15 -
-Rule sol87 1987 only - Aug 22 12:03:00s -0:03:00 -
-Rule sol87 1987 only - Aug 23 12:02:45s -0:02:45 -
-Rule sol87 1987 only - Aug 24 12:02:30s -0:02:30 -
-Rule sol87 1987 only - Aug 25 12:02:15s -0:02:15 -
-Rule sol87 1987 only - Aug 26 12:02:00s -0:02:00 -
-Rule sol87 1987 only - Aug 27 12:01:40s -0:01:40 -
-Rule sol87 1987 only - Aug 28 12:01:25s -0:01:25 -
-Rule sol87 1987 only - Aug 29 12:01:05s -0:01:05 -
-Rule sol87 1987 only - Aug 30 12:00:50s -0:00:50 -
-Rule sol87 1987 only - Aug 31 12:00:30s -0:00:30 -
-Rule sol87 1987 only - Sep 1 12:00:10s -0:00:10 -
-Rule sol87 1987 only - Sep 2 11:59:50s 0:00:10 -
-Rule sol87 1987 only - Sep 3 11:59:35s 0:00:25 -
-Rule sol87 1987 only - Sep 4 11:59:15s 0:00:45 -
-Rule sol87 1987 only - Sep 5 11:58:55s 0:01:05 -
-Rule sol87 1987 only - Sep 6 11:58:35s 0:01:25 -
-Rule sol87 1987 only - Sep 7 11:58:15s 0:01:45 -
-Rule sol87 1987 only - Sep 8 11:57:55s 0:02:05 -
-Rule sol87 1987 only - Sep 9 11:57:30s 0:02:30 -
-Rule sol87 1987 only - Sep 10 11:57:10s 0:02:50 -
-Rule sol87 1987 only - Sep 11 11:56:50s 0:03:10 -
-Rule sol87 1987 only - Sep 12 11:56:30s 0:03:30 -
-Rule sol87 1987 only - Sep 13 11:56:10s 0:03:50 -
-Rule sol87 1987 only - Sep 14 11:55:45s 0:04:15 -
-Rule sol87 1987 only - Sep 15 11:55:25s 0:04:35 -
-Rule sol87 1987 only - Sep 16 11:55:05s 0:04:55 -
-Rule sol87 1987 only - Sep 17 11:54:45s 0:05:15 -
-Rule sol87 1987 only - Sep 18 11:54:20s 0:05:40 -
-Rule sol87 1987 only - Sep 19 11:54:00s 0:06:00 -
-Rule sol87 1987 only - Sep 20 11:53:40s 0:06:20 -
-Rule sol87 1987 only - Sep 21 11:53:15s 0:06:45 -
-Rule sol87 1987 only - Sep 22 11:52:55s 0:07:05 -
-Rule sol87 1987 only - Sep 23 11:52:35s 0:07:25 -
-Rule sol87 1987 only - Sep 24 11:52:15s 0:07:45 -
-Rule sol87 1987 only - Sep 25 11:51:55s 0:08:05 -
-Rule sol87 1987 only - Sep 26 11:51:35s 0:08:25 -
-Rule sol87 1987 only - Sep 27 11:51:10s 0:08:50 -
-Rule sol87 1987 only - Sep 28 11:50:50s 0:09:10 -
-Rule sol87 1987 only - Sep 29 11:50:30s 0:09:30 -
-Rule sol87 1987 only - Sep 30 11:50:10s 0:09:50 -
-Rule sol87 1987 only - Oct 1 11:49:50s 0:10:10 -
-Rule sol87 1987 only - Oct 2 11:49:35s 0:10:25 -
-Rule sol87 1987 only - Oct 3 11:49:15s 0:10:45 -
-Rule sol87 1987 only - Oct 4 11:48:55s 0:11:05 -
-Rule sol87 1987 only - Oct 5 11:48:35s 0:11:25 -
-Rule sol87 1987 only - Oct 6 11:48:20s 0:11:40 -
-Rule sol87 1987 only - Oct 7 11:48:00s 0:12:00 -
-Rule sol87 1987 only - Oct 8 11:47:45s 0:12:15 -
-Rule sol87 1987 only - Oct 9 11:47:25s 0:12:35 -
-Rule sol87 1987 only - Oct 10 11:47:10s 0:12:50 -
-Rule sol87 1987 only - Oct 11 11:46:55s 0:13:05 -
-Rule sol87 1987 only - Oct 12 11:46:40s 0:13:20 -
-Rule sol87 1987 only - Oct 13 11:46:25s 0:13:35 -
-Rule sol87 1987 only - Oct 14 11:46:10s 0:13:50 -
-Rule sol87 1987 only - Oct 15 11:45:55s 0:14:05 -
-Rule sol87 1987 only - Oct 16 11:45:45s 0:14:15 -
-Rule sol87 1987 only - Oct 17 11:45:30s 0:14:30 -
-Rule sol87 1987 only - Oct 18 11:45:20s 0:14:40 -
-Rule sol87 1987 only - Oct 19 11:45:05s 0:14:55 -
-Rule sol87 1987 only - Oct 20 11:44:55s 0:15:05 -
-Rule sol87 1987 only - Oct 21 11:44:45s 0:15:15 -
-Rule sol87 1987 only - Oct 22 11:44:35s 0:15:25 -
-Rule sol87 1987 only - Oct 23 11:44:25s 0:15:35 -
-Rule sol87 1987 only - Oct 24 11:44:20s 0:15:40 -
-Rule sol87 1987 only - Oct 25 11:44:10s 0:15:50 -
-Rule sol87 1987 only - Oct 26 11:44:05s 0:15:55 -
-Rule sol87 1987 only - Oct 27 11:43:55s 0:16:05 -
-Rule sol87 1987 only - Oct 28 11:43:50s 0:16:10 -
-Rule sol87 1987 only - Oct 29 11:43:45s 0:16:15 -
-Rule sol87 1987 only - Oct 30 11:43:45s 0:16:15 -
-Rule sol87 1987 only - Oct 31 11:43:40s 0:16:20 -
-Rule sol87 1987 only - Nov 1 11:43:40s 0:16:20 -
-Rule sol87 1987 only - Nov 2 11:43:35s 0:16:25 -
-Rule sol87 1987 only - Nov 3 11:43:35s 0:16:25 -
-Rule sol87 1987 only - Nov 4 11:43:35s 0:16:25 -
-Rule sol87 1987 only - Nov 5 11:43:35s 0:16:25 -
-Rule sol87 1987 only - Nov 6 11:43:40s 0:16:20 -
-Rule sol87 1987 only - Nov 7 11:43:40s 0:16:20 -
-Rule sol87 1987 only - Nov 8 11:43:45s 0:16:15 -
-Rule sol87 1987 only - Nov 9 11:43:50s 0:16:10 -
-Rule sol87 1987 only - Nov 10 11:43:55s 0:16:05 -
-Rule sol87 1987 only - Nov 11 11:44:00s 0:16:00 -
-Rule sol87 1987 only - Nov 12 11:44:05s 0:15:55 -
-Rule sol87 1987 only - Nov 13 11:44:15s 0:15:45 -
-Rule sol87 1987 only - Nov 14 11:44:20s 0:15:40 -
-Rule sol87 1987 only - Nov 15 11:44:30s 0:15:30 -
-Rule sol87 1987 only - Nov 16 11:44:40s 0:15:20 -
-Rule sol87 1987 only - Nov 17 11:44:50s 0:15:10 -
-Rule sol87 1987 only - Nov 18 11:45:05s 0:14:55 -
-Rule sol87 1987 only - Nov 19 11:45:15s 0:14:45 -
-Rule sol87 1987 only - Nov 20 11:45:30s 0:14:30 -
-Rule sol87 1987 only - Nov 21 11:45:45s 0:14:15 -
-Rule sol87 1987 only - Nov 22 11:46:00s 0:14:00 -
-Rule sol87 1987 only - Nov 23 11:46:15s 0:13:45 -
-Rule sol87 1987 only - Nov 24 11:46:30s 0:13:30 -
-Rule sol87 1987 only - Nov 25 11:46:50s 0:13:10 -
-Rule sol87 1987 only - Nov 26 11:47:10s 0:12:50 -
-Rule sol87 1987 only - Nov 27 11:47:25s 0:12:35 -
-Rule sol87 1987 only - Nov 28 11:47:45s 0:12:15 -
-Rule sol87 1987 only - Nov 29 11:48:05s 0:11:55 -
-Rule sol87 1987 only - Nov 30 11:48:30s 0:11:30 -
-Rule sol87 1987 only - Dec 1 11:48:50s 0:11:10 -
-Rule sol87 1987 only - Dec 2 11:49:10s 0:10:50 -
-Rule sol87 1987 only - Dec 3 11:49:35s 0:10:25 -
-Rule sol87 1987 only - Dec 4 11:50:00s 0:10:00 -
-Rule sol87 1987 only - Dec 5 11:50:25s 0:09:35 -
-Rule sol87 1987 only - Dec 6 11:50:50s 0:09:10 -
-Rule sol87 1987 only - Dec 7 11:51:15s 0:08:45 -
-Rule sol87 1987 only - Dec 8 11:51:40s 0:08:20 -
-Rule sol87 1987 only - Dec 9 11:52:05s 0:07:55 -
-Rule sol87 1987 only - Dec 10 11:52:30s 0:07:30 -
-Rule sol87 1987 only - Dec 11 11:53:00s 0:07:00 -
-Rule sol87 1987 only - Dec 12 11:53:25s 0:06:35 -
-Rule sol87 1987 only - Dec 13 11:53:55s 0:06:05 -
-Rule sol87 1987 only - Dec 14 11:54:25s 0:05:35 -
-Rule sol87 1987 only - Dec 15 11:54:50s 0:05:10 -
-Rule sol87 1987 only - Dec 16 11:55:20s 0:04:40 -
-Rule sol87 1987 only - Dec 17 11:55:50s 0:04:10 -
-Rule sol87 1987 only - Dec 18 11:56:20s 0:03:40 -
-Rule sol87 1987 only - Dec 19 11:56:50s 0:03:10 -
-Rule sol87 1987 only - Dec 20 11:57:20s 0:02:40 -
-Rule sol87 1987 only - Dec 21 11:57:50s 0:02:10 -
-Rule sol87 1987 only - Dec 22 11:58:20s 0:01:40 -
-Rule sol87 1987 only - Dec 23 11:58:50s 0:01:10 -
-Rule sol87 1987 only - Dec 24 11:59:20s 0:00:40 -
-Rule sol87 1987 only - Dec 25 11:59:50s 0:00:10 -
-Rule sol87 1987 only - Dec 26 12:00:20s -0:00:20 -
-Rule sol87 1987 only - Dec 27 12:00:45s -0:00:45 -
-Rule sol87 1987 only - Dec 28 12:01:15s -0:01:15 -
-Rule sol87 1987 only - Dec 29 12:01:45s -0:01:45 -
-Rule sol87 1987 only - Dec 30 12:02:15s -0:02:15 -
-Rule sol87 1987 only - Dec 31 12:02:45s -0:02:45 -
-
-# Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs
-# Before and after 1987, we'll operate on local mean solar time.
-
-# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
-Zone Asia/Riyadh87 3:07:04 - zzz 1987
- 3:07:04 sol87 zzz 1988
- 3:07:04 - zzz
-# For backward compatibility...
-Link Asia/Riyadh87 Mideast/Riyadh87
diff --git a/tools/zoneinfo/tzdata2008h/solar88 b/tools/zoneinfo/tzdata2008h/solar88
deleted file mode 100644
index b4cfe8e..0000000
--- a/tools/zoneinfo/tzdata2008h/solar88
+++ /dev/null
@@ -1,388 +0,0 @@
-# @(#)solar88 8.1
-
-# Apparent noon times below are for Riyadh; they're a bit off for other places.
-# Times were computed using formulas in the U.S. Naval Observatory's
-# Almanac for Computers 1988; the formulas "will give EqT to an accuracy of
-# [plus or minus two] seconds during the current year."
-#
-# Rounding to the nearest five seconds results in fewer than
-# 256 different "time types"--a limit that's faced because time types are
-# stored on disk as unsigned chars.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule sol88 1988 only - Jan 1 12:03:15s -0:03:15 -
-Rule sol88 1988 only - Jan 2 12:03:40s -0:03:40 -
-Rule sol88 1988 only - Jan 3 12:04:10s -0:04:10 -
-Rule sol88 1988 only - Jan 4 12:04:40s -0:04:40 -
-Rule sol88 1988 only - Jan 5 12:05:05s -0:05:05 -
-Rule sol88 1988 only - Jan 6 12:05:30s -0:05:30 -
-Rule sol88 1988 only - Jan 7 12:06:00s -0:06:00 -
-Rule sol88 1988 only - Jan 8 12:06:25s -0:06:25 -
-Rule sol88 1988 only - Jan 9 12:06:50s -0:06:50 -
-Rule sol88 1988 only - Jan 10 12:07:15s -0:07:15 -
-Rule sol88 1988 only - Jan 11 12:07:40s -0:07:40 -
-Rule sol88 1988 only - Jan 12 12:08:05s -0:08:05 -
-Rule sol88 1988 only - Jan 13 12:08:25s -0:08:25 -
-Rule sol88 1988 only - Jan 14 12:08:50s -0:08:50 -
-Rule sol88 1988 only - Jan 15 12:09:10s -0:09:10 -
-Rule sol88 1988 only - Jan 16 12:09:30s -0:09:30 -
-Rule sol88 1988 only - Jan 17 12:09:50s -0:09:50 -
-Rule sol88 1988 only - Jan 18 12:10:10s -0:10:10 -
-Rule sol88 1988 only - Jan 19 12:10:30s -0:10:30 -
-Rule sol88 1988 only - Jan 20 12:10:50s -0:10:50 -
-Rule sol88 1988 only - Jan 21 12:11:05s -0:11:05 -
-Rule sol88 1988 only - Jan 22 12:11:25s -0:11:25 -
-Rule sol88 1988 only - Jan 23 12:11:40s -0:11:40 -
-Rule sol88 1988 only - Jan 24 12:11:55s -0:11:55 -
-Rule sol88 1988 only - Jan 25 12:12:10s -0:12:10 -
-Rule sol88 1988 only - Jan 26 12:12:25s -0:12:25 -
-Rule sol88 1988 only - Jan 27 12:12:40s -0:12:40 -
-Rule sol88 1988 only - Jan 28 12:12:50s -0:12:50 -
-Rule sol88 1988 only - Jan 29 12:13:00s -0:13:00 -
-Rule sol88 1988 only - Jan 30 12:13:10s -0:13:10 -
-Rule sol88 1988 only - Jan 31 12:13:20s -0:13:20 -
-Rule sol88 1988 only - Feb 1 12:13:30s -0:13:30 -
-Rule sol88 1988 only - Feb 2 12:13:40s -0:13:40 -
-Rule sol88 1988 only - Feb 3 12:13:45s -0:13:45 -
-Rule sol88 1988 only - Feb 4 12:13:55s -0:13:55 -
-Rule sol88 1988 only - Feb 5 12:14:00s -0:14:00 -
-Rule sol88 1988 only - Feb 6 12:14:05s -0:14:05 -
-Rule sol88 1988 only - Feb 7 12:14:10s -0:14:10 -
-Rule sol88 1988 only - Feb 8 12:14:10s -0:14:10 -
-Rule sol88 1988 only - Feb 9 12:14:15s -0:14:15 -
-Rule sol88 1988 only - Feb 10 12:14:15s -0:14:15 -
-Rule sol88 1988 only - Feb 11 12:14:15s -0:14:15 -
-Rule sol88 1988 only - Feb 12 12:14:15s -0:14:15 -
-Rule sol88 1988 only - Feb 13 12:14:15s -0:14:15 -
-Rule sol88 1988 only - Feb 14 12:14:15s -0:14:15 -
-Rule sol88 1988 only - Feb 15 12:14:10s -0:14:10 -
-Rule sol88 1988 only - Feb 16 12:14:10s -0:14:10 -
-Rule sol88 1988 only - Feb 17 12:14:05s -0:14:05 -
-Rule sol88 1988 only - Feb 18 12:14:00s -0:14:00 -
-Rule sol88 1988 only - Feb 19 12:13:55s -0:13:55 -
-Rule sol88 1988 only - Feb 20 12:13:50s -0:13:50 -
-Rule sol88 1988 only - Feb 21 12:13:45s -0:13:45 -
-Rule sol88 1988 only - Feb 22 12:13:40s -0:13:40 -
-Rule sol88 1988 only - Feb 23 12:13:30s -0:13:30 -
-Rule sol88 1988 only - Feb 24 12:13:20s -0:13:20 -
-Rule sol88 1988 only - Feb 25 12:13:15s -0:13:15 -
-Rule sol88 1988 only - Feb 26 12:13:05s -0:13:05 -
-Rule sol88 1988 only - Feb 27 12:12:55s -0:12:55 -
-Rule sol88 1988 only - Feb 28 12:12:45s -0:12:45 -
-Rule sol88 1988 only - Feb 29 12:12:30s -0:12:30 -
-Rule sol88 1988 only - Mar 1 12:12:20s -0:12:20 -
-Rule sol88 1988 only - Mar 2 12:12:10s -0:12:10 -
-Rule sol88 1988 only - Mar 3 12:11:55s -0:11:55 -
-Rule sol88 1988 only - Mar 4 12:11:45s -0:11:45 -
-Rule sol88 1988 only - Mar 5 12:11:30s -0:11:30 -
-Rule sol88 1988 only - Mar 6 12:11:15s -0:11:15 -
-Rule sol88 1988 only - Mar 7 12:11:00s -0:11:00 -
-Rule sol88 1988 only - Mar 8 12:10:45s -0:10:45 -
-Rule sol88 1988 only - Mar 9 12:10:30s -0:10:30 -
-Rule sol88 1988 only - Mar 10 12:10:15s -0:10:15 -
-Rule sol88 1988 only - Mar 11 12:10:00s -0:10:00 -
-Rule sol88 1988 only - Mar 12 12:09:45s -0:09:45 -
-Rule sol88 1988 only - Mar 13 12:09:30s -0:09:30 -
-Rule sol88 1988 only - Mar 14 12:09:10s -0:09:10 -
-Rule sol88 1988 only - Mar 15 12:08:55s -0:08:55 -
-Rule sol88 1988 only - Mar 16 12:08:40s -0:08:40 -
-Rule sol88 1988 only - Mar 17 12:08:20s -0:08:20 -
-Rule sol88 1988 only - Mar 18 12:08:05s -0:08:05 -
-Rule sol88 1988 only - Mar 19 12:07:45s -0:07:45 -
-Rule sol88 1988 only - Mar 20 12:07:30s -0:07:30 -
-Rule sol88 1988 only - Mar 21 12:07:10s -0:07:10 -
-Rule sol88 1988 only - Mar 22 12:06:50s -0:06:50 -
-Rule sol88 1988 only - Mar 23 12:06:35s -0:06:35 -
-Rule sol88 1988 only - Mar 24 12:06:15s -0:06:15 -
-Rule sol88 1988 only - Mar 25 12:06:00s -0:06:00 -
-Rule sol88 1988 only - Mar 26 12:05:40s -0:05:40 -
-Rule sol88 1988 only - Mar 27 12:05:20s -0:05:20 -
-Rule sol88 1988 only - Mar 28 12:05:05s -0:05:05 -
-Rule sol88 1988 only - Mar 29 12:04:45s -0:04:45 -
-Rule sol88 1988 only - Mar 30 12:04:25s -0:04:25 -
-Rule sol88 1988 only - Mar 31 12:04:10s -0:04:10 -
-Rule sol88 1988 only - Apr 1 12:03:50s -0:03:50 -
-Rule sol88 1988 only - Apr 2 12:03:35s -0:03:35 -
-Rule sol88 1988 only - Apr 3 12:03:15s -0:03:15 -
-Rule sol88 1988 only - Apr 4 12:03:00s -0:03:00 -
-Rule sol88 1988 only - Apr 5 12:02:40s -0:02:40 -
-Rule sol88 1988 only - Apr 6 12:02:25s -0:02:25 -
-Rule sol88 1988 only - Apr 7 12:02:05s -0:02:05 -
-Rule sol88 1988 only - Apr 8 12:01:50s -0:01:50 -
-Rule sol88 1988 only - Apr 9 12:01:35s -0:01:35 -
-Rule sol88 1988 only - Apr 10 12:01:15s -0:01:15 -
-Rule sol88 1988 only - Apr 11 12:01:00s -0:01:00 -
-Rule sol88 1988 only - Apr 12 12:00:45s -0:00:45 -
-Rule sol88 1988 only - Apr 13 12:00:30s -0:00:30 -
-Rule sol88 1988 only - Apr 14 12:00:15s -0:00:15 -
-Rule sol88 1988 only - Apr 15 12:00:00s 0:00:00 -
-Rule sol88 1988 only - Apr 16 11:59:45s 0:00:15 -
-Rule sol88 1988 only - Apr 17 11:59:30s 0:00:30 -
-Rule sol88 1988 only - Apr 18 11:59:20s 0:00:40 -
-Rule sol88 1988 only - Apr 19 11:59:05s 0:00:55 -
-Rule sol88 1988 only - Apr 20 11:58:55s 0:01:05 -
-Rule sol88 1988 only - Apr 21 11:58:40s 0:01:20 -
-Rule sol88 1988 only - Apr 22 11:58:30s 0:01:30 -
-Rule sol88 1988 only - Apr 23 11:58:15s 0:01:45 -
-Rule sol88 1988 only - Apr 24 11:58:05s 0:01:55 -
-Rule sol88 1988 only - Apr 25 11:57:55s 0:02:05 -
-Rule sol88 1988 only - Apr 26 11:57:45s 0:02:15 -
-Rule sol88 1988 only - Apr 27 11:57:35s 0:02:25 -
-Rule sol88 1988 only - Apr 28 11:57:30s 0:02:30 -
-Rule sol88 1988 only - Apr 29 11:57:20s 0:02:40 -
-Rule sol88 1988 only - Apr 30 11:57:10s 0:02:50 -
-Rule sol88 1988 only - May 1 11:57:05s 0:02:55 -
-Rule sol88 1988 only - May 2 11:56:55s 0:03:05 -
-Rule sol88 1988 only - May 3 11:56:50s 0:03:10 -
-Rule sol88 1988 only - May 4 11:56:45s 0:03:15 -
-Rule sol88 1988 only - May 5 11:56:40s 0:03:20 -
-Rule sol88 1988 only - May 6 11:56:35s 0:03:25 -
-Rule sol88 1988 only - May 7 11:56:30s 0:03:30 -
-Rule sol88 1988 only - May 8 11:56:25s 0:03:35 -
-Rule sol88 1988 only - May 9 11:56:25s 0:03:35 -
-Rule sol88 1988 only - May 10 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 11 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 12 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 13 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 14 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 15 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 16 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 17 11:56:20s 0:03:40 -
-Rule sol88 1988 only - May 18 11:56:25s 0:03:35 -
-Rule sol88 1988 only - May 19 11:56:25s 0:03:35 -
-Rule sol88 1988 only - May 20 11:56:30s 0:03:30 -
-Rule sol88 1988 only - May 21 11:56:35s 0:03:25 -
-Rule sol88 1988 only - May 22 11:56:40s 0:03:20 -
-Rule sol88 1988 only - May 23 11:56:45s 0:03:15 -
-Rule sol88 1988 only - May 24 11:56:50s 0:03:10 -
-Rule sol88 1988 only - May 25 11:56:55s 0:03:05 -
-Rule sol88 1988 only - May 26 11:57:00s 0:03:00 -
-Rule sol88 1988 only - May 27 11:57:05s 0:02:55 -
-Rule sol88 1988 only - May 28 11:57:15s 0:02:45 -
-Rule sol88 1988 only - May 29 11:57:20s 0:02:40 -
-Rule sol88 1988 only - May 30 11:57:30s 0:02:30 -
-Rule sol88 1988 only - May 31 11:57:40s 0:02:20 -
-Rule sol88 1988 only - Jun 1 11:57:50s 0:02:10 -
-Rule sol88 1988 only - Jun 2 11:57:55s 0:02:05 -
-Rule sol88 1988 only - Jun 3 11:58:05s 0:01:55 -
-Rule sol88 1988 only - Jun 4 11:58:15s 0:01:45 -
-Rule sol88 1988 only - Jun 5 11:58:30s 0:01:30 -
-Rule sol88 1988 only - Jun 6 11:58:40s 0:01:20 -
-Rule sol88 1988 only - Jun 7 11:58:50s 0:01:10 -
-Rule sol88 1988 only - Jun 8 11:59:00s 0:01:00 -
-Rule sol88 1988 only - Jun 9 11:59:15s 0:00:45 -
-Rule sol88 1988 only - Jun 10 11:59:25s 0:00:35 -
-Rule sol88 1988 only - Jun 11 11:59:35s 0:00:25 -
-Rule sol88 1988 only - Jun 12 11:59:50s 0:00:10 -
-Rule sol88 1988 only - Jun 13 12:00:00s 0:00:00 -
-Rule sol88 1988 only - Jun 14 12:00:15s -0:00:15 -
-Rule sol88 1988 only - Jun 15 12:00:25s -0:00:25 -
-Rule sol88 1988 only - Jun 16 12:00:40s -0:00:40 -
-Rule sol88 1988 only - Jun 17 12:00:55s -0:00:55 -
-Rule sol88 1988 only - Jun 18 12:01:05s -0:01:05 -
-Rule sol88 1988 only - Jun 19 12:01:20s -0:01:20 -
-Rule sol88 1988 only - Jun 20 12:01:30s -0:01:30 -
-Rule sol88 1988 only - Jun 21 12:01:45s -0:01:45 -
-Rule sol88 1988 only - Jun 22 12:02:00s -0:02:00 -
-Rule sol88 1988 only - Jun 23 12:02:10s -0:02:10 -
-Rule sol88 1988 only - Jun 24 12:02:25s -0:02:25 -
-Rule sol88 1988 only - Jun 25 12:02:35s -0:02:35 -
-Rule sol88 1988 only - Jun 26 12:02:50s -0:02:50 -
-Rule sol88 1988 only - Jun 27 12:03:00s -0:03:00 -
-Rule sol88 1988 only - Jun 28 12:03:15s -0:03:15 -
-Rule sol88 1988 only - Jun 29 12:03:25s -0:03:25 -
-Rule sol88 1988 only - Jun 30 12:03:40s -0:03:40 -
-Rule sol88 1988 only - Jul 1 12:03:50s -0:03:50 -
-Rule sol88 1988 only - Jul 2 12:04:00s -0:04:00 -
-Rule sol88 1988 only - Jul 3 12:04:10s -0:04:10 -
-Rule sol88 1988 only - Jul 4 12:04:25s -0:04:25 -
-Rule sol88 1988 only - Jul 5 12:04:35s -0:04:35 -
-Rule sol88 1988 only - Jul 6 12:04:45s -0:04:45 -
-Rule sol88 1988 only - Jul 7 12:04:55s -0:04:55 -
-Rule sol88 1988 only - Jul 8 12:05:05s -0:05:05 -
-Rule sol88 1988 only - Jul 9 12:05:10s -0:05:10 -
-Rule sol88 1988 only - Jul 10 12:05:20s -0:05:20 -
-Rule sol88 1988 only - Jul 11 12:05:30s -0:05:30 -
-Rule sol88 1988 only - Jul 12 12:05:35s -0:05:35 -
-Rule sol88 1988 only - Jul 13 12:05:45s -0:05:45 -
-Rule sol88 1988 only - Jul 14 12:05:50s -0:05:50 -
-Rule sol88 1988 only - Jul 15 12:05:55s -0:05:55 -
-Rule sol88 1988 only - Jul 16 12:06:00s -0:06:00 -
-Rule sol88 1988 only - Jul 17 12:06:05s -0:06:05 -
-Rule sol88 1988 only - Jul 18 12:06:10s -0:06:10 -
-Rule sol88 1988 only - Jul 19 12:06:15s -0:06:15 -
-Rule sol88 1988 only - Jul 20 12:06:20s -0:06:20 -
-Rule sol88 1988 only - Jul 21 12:06:25s -0:06:25 -
-Rule sol88 1988 only - Jul 22 12:06:25s -0:06:25 -
-Rule sol88 1988 only - Jul 23 12:06:25s -0:06:25 -
-Rule sol88 1988 only - Jul 24 12:06:30s -0:06:30 -
-Rule sol88 1988 only - Jul 25 12:06:30s -0:06:30 -
-Rule sol88 1988 only - Jul 26 12:06:30s -0:06:30 -
-Rule sol88 1988 only - Jul 27 12:06:30s -0:06:30 -
-Rule sol88 1988 only - Jul 28 12:06:30s -0:06:30 -
-Rule sol88 1988 only - Jul 29 12:06:25s -0:06:25 -
-Rule sol88 1988 only - Jul 30 12:06:25s -0:06:25 -
-Rule sol88 1988 only - Jul 31 12:06:20s -0:06:20 -
-Rule sol88 1988 only - Aug 1 12:06:15s -0:06:15 -
-Rule sol88 1988 only - Aug 2 12:06:15s -0:06:15 -
-Rule sol88 1988 only - Aug 3 12:06:10s -0:06:10 -
-Rule sol88 1988 only - Aug 4 12:06:05s -0:06:05 -
-Rule sol88 1988 only - Aug 5 12:05:55s -0:05:55 -
-Rule sol88 1988 only - Aug 6 12:05:50s -0:05:50 -
-Rule sol88 1988 only - Aug 7 12:05:45s -0:05:45 -
-Rule sol88 1988 only - Aug 8 12:05:35s -0:05:35 -
-Rule sol88 1988 only - Aug 9 12:05:25s -0:05:25 -
-Rule sol88 1988 only - Aug 10 12:05:20s -0:05:20 -
-Rule sol88 1988 only - Aug 11 12:05:10s -0:05:10 -
-Rule sol88 1988 only - Aug 12 12:05:00s -0:05:00 -
-Rule sol88 1988 only - Aug 13 12:04:50s -0:04:50 -
-Rule sol88 1988 only - Aug 14 12:04:35s -0:04:35 -
-Rule sol88 1988 only - Aug 15 12:04:25s -0:04:25 -
-Rule sol88 1988 only - Aug 16 12:04:15s -0:04:15 -
-Rule sol88 1988 only - Aug 17 12:04:00s -0:04:00 -
-Rule sol88 1988 only - Aug 18 12:03:50s -0:03:50 -
-Rule sol88 1988 only - Aug 19 12:03:35s -0:03:35 -
-Rule sol88 1988 only - Aug 20 12:03:20s -0:03:20 -
-Rule sol88 1988 only - Aug 21 12:03:05s -0:03:05 -
-Rule sol88 1988 only - Aug 22 12:02:50s -0:02:50 -
-Rule sol88 1988 only - Aug 23 12:02:35s -0:02:35 -
-Rule sol88 1988 only - Aug 24 12:02:20s -0:02:20 -
-Rule sol88 1988 only - Aug 25 12:02:00s -0:02:00 -
-Rule sol88 1988 only - Aug 26 12:01:45s -0:01:45 -
-Rule sol88 1988 only - Aug 27 12:01:30s -0:01:30 -
-Rule sol88 1988 only - Aug 28 12:01:10s -0:01:10 -
-Rule sol88 1988 only - Aug 29 12:00:50s -0:00:50 -
-Rule sol88 1988 only - Aug 30 12:00:35s -0:00:35 -
-Rule sol88 1988 only - Aug 31 12:00:15s -0:00:15 -
-Rule sol88 1988 only - Sep 1 11:59:55s 0:00:05 -
-Rule sol88 1988 only - Sep 2 11:59:35s 0:00:25 -
-Rule sol88 1988 only - Sep 3 11:59:20s 0:00:40 -
-Rule sol88 1988 only - Sep 4 11:59:00s 0:01:00 -
-Rule sol88 1988 only - Sep 5 11:58:40s 0:01:20 -
-Rule sol88 1988 only - Sep 6 11:58:20s 0:01:40 -
-Rule sol88 1988 only - Sep 7 11:58:00s 0:02:00 -
-Rule sol88 1988 only - Sep 8 11:57:35s 0:02:25 -
-Rule sol88 1988 only - Sep 9 11:57:15s 0:02:45 -
-Rule sol88 1988 only - Sep 10 11:56:55s 0:03:05 -
-Rule sol88 1988 only - Sep 11 11:56:35s 0:03:25 -
-Rule sol88 1988 only - Sep 12 11:56:15s 0:03:45 -
-Rule sol88 1988 only - Sep 13 11:55:50s 0:04:10 -
-Rule sol88 1988 only - Sep 14 11:55:30s 0:04:30 -
-Rule sol88 1988 only - Sep 15 11:55:10s 0:04:50 -
-Rule sol88 1988 only - Sep 16 11:54:50s 0:05:10 -
-Rule sol88 1988 only - Sep 17 11:54:25s 0:05:35 -
-Rule sol88 1988 only - Sep 18 11:54:05s 0:05:55 -
-Rule sol88 1988 only - Sep 19 11:53:45s 0:06:15 -
-Rule sol88 1988 only - Sep 20 11:53:25s 0:06:35 -
-Rule sol88 1988 only - Sep 21 11:53:00s 0:07:00 -
-Rule sol88 1988 only - Sep 22 11:52:40s 0:07:20 -
-Rule sol88 1988 only - Sep 23 11:52:20s 0:07:40 -
-Rule sol88 1988 only - Sep 24 11:52:00s 0:08:00 -
-Rule sol88 1988 only - Sep 25 11:51:40s 0:08:20 -
-Rule sol88 1988 only - Sep 26 11:51:15s 0:08:45 -
-Rule sol88 1988 only - Sep 27 11:50:55s 0:09:05 -
-Rule sol88 1988 only - Sep 28 11:50:35s 0:09:25 -
-Rule sol88 1988 only - Sep 29 11:50:15s 0:09:45 -
-Rule sol88 1988 only - Sep 30 11:49:55s 0:10:05 -
-Rule sol88 1988 only - Oct 1 11:49:35s 0:10:25 -
-Rule sol88 1988 only - Oct 2 11:49:20s 0:10:40 -
-Rule sol88 1988 only - Oct 3 11:49:00s 0:11:00 -
-Rule sol88 1988 only - Oct 4 11:48:40s 0:11:20 -
-Rule sol88 1988 only - Oct 5 11:48:25s 0:11:35 -
-Rule sol88 1988 only - Oct 6 11:48:05s 0:11:55 -
-Rule sol88 1988 only - Oct 7 11:47:50s 0:12:10 -
-Rule sol88 1988 only - Oct 8 11:47:30s 0:12:30 -
-Rule sol88 1988 only - Oct 9 11:47:15s 0:12:45 -
-Rule sol88 1988 only - Oct 10 11:47:00s 0:13:00 -
-Rule sol88 1988 only - Oct 11 11:46:45s 0:13:15 -
-Rule sol88 1988 only - Oct 12 11:46:30s 0:13:30 -
-Rule sol88 1988 only - Oct 13 11:46:15s 0:13:45 -
-Rule sol88 1988 only - Oct 14 11:46:00s 0:14:00 -
-Rule sol88 1988 only - Oct 15 11:45:45s 0:14:15 -
-Rule sol88 1988 only - Oct 16 11:45:35s 0:14:25 -
-Rule sol88 1988 only - Oct 17 11:45:20s 0:14:40 -
-Rule sol88 1988 only - Oct 18 11:45:10s 0:14:50 -
-Rule sol88 1988 only - Oct 19 11:45:00s 0:15:00 -
-Rule sol88 1988 only - Oct 20 11:44:45s 0:15:15 -
-Rule sol88 1988 only - Oct 21 11:44:40s 0:15:20 -
-Rule sol88 1988 only - Oct 22 11:44:30s 0:15:30 -
-Rule sol88 1988 only - Oct 23 11:44:20s 0:15:40 -
-Rule sol88 1988 only - Oct 24 11:44:10s 0:15:50 -
-Rule sol88 1988 only - Oct 25 11:44:05s 0:15:55 -
-Rule sol88 1988 only - Oct 26 11:44:00s 0:16:00 -
-Rule sol88 1988 only - Oct 27 11:43:55s 0:16:05 -
-Rule sol88 1988 only - Oct 28 11:43:50s 0:16:10 -
-Rule sol88 1988 only - Oct 29 11:43:45s 0:16:15 -
-Rule sol88 1988 only - Oct 30 11:43:40s 0:16:20 -
-Rule sol88 1988 only - Oct 31 11:43:40s 0:16:20 -
-Rule sol88 1988 only - Nov 1 11:43:35s 0:16:25 -
-Rule sol88 1988 only - Nov 2 11:43:35s 0:16:25 -
-Rule sol88 1988 only - Nov 3 11:43:35s 0:16:25 -
-Rule sol88 1988 only - Nov 4 11:43:35s 0:16:25 -
-Rule sol88 1988 only - Nov 5 11:43:40s 0:16:20 -
-Rule sol88 1988 only - Nov 6 11:43:40s 0:16:20 -
-Rule sol88 1988 only - Nov 7 11:43:45s 0:16:15 -
-Rule sol88 1988 only - Nov 8 11:43:45s 0:16:15 -
-Rule sol88 1988 only - Nov 9 11:43:50s 0:16:10 -
-Rule sol88 1988 only - Nov 10 11:44:00s 0:16:00 -
-Rule sol88 1988 only - Nov 11 11:44:05s 0:15:55 -
-Rule sol88 1988 only - Nov 12 11:44:10s 0:15:50 -
-Rule sol88 1988 only - Nov 13 11:44:20s 0:15:40 -
-Rule sol88 1988 only - Nov 14 11:44:30s 0:15:30 -
-Rule sol88 1988 only - Nov 15 11:44:40s 0:15:20 -
-Rule sol88 1988 only - Nov 16 11:44:50s 0:15:10 -
-Rule sol88 1988 only - Nov 17 11:45:00s 0:15:00 -
-Rule sol88 1988 only - Nov 18 11:45:15s 0:14:45 -
-Rule sol88 1988 only - Nov 19 11:45:25s 0:14:35 -
-Rule sol88 1988 only - Nov 20 11:45:40s 0:14:20 -
-Rule sol88 1988 only - Nov 21 11:45:55s 0:14:05 -
-Rule sol88 1988 only - Nov 22 11:46:10s 0:13:50 -
-Rule sol88 1988 only - Nov 23 11:46:30s 0:13:30 -
-Rule sol88 1988 only - Nov 24 11:46:45s 0:13:15 -
-Rule sol88 1988 only - Nov 25 11:47:05s 0:12:55 -
-Rule sol88 1988 only - Nov 26 11:47:20s 0:12:40 -
-Rule sol88 1988 only - Nov 27 11:47:40s 0:12:20 -
-Rule sol88 1988 only - Nov 28 11:48:00s 0:12:00 -
-Rule sol88 1988 only - Nov 29 11:48:25s 0:11:35 -
-Rule sol88 1988 only - Nov 30 11:48:45s 0:11:15 -
-Rule sol88 1988 only - Dec 1 11:49:05s 0:10:55 -
-Rule sol88 1988 only - Dec 2 11:49:30s 0:10:30 -
-Rule sol88 1988 only - Dec 3 11:49:55s 0:10:05 -
-Rule sol88 1988 only - Dec 4 11:50:15s 0:09:45 -
-Rule sol88 1988 only - Dec 5 11:50:40s 0:09:20 -
-Rule sol88 1988 only - Dec 6 11:51:05s 0:08:55 -
-Rule sol88 1988 only - Dec 7 11:51:35s 0:08:25 -
-Rule sol88 1988 only - Dec 8 11:52:00s 0:08:00 -
-Rule sol88 1988 only - Dec 9 11:52:25s 0:07:35 -
-Rule sol88 1988 only - Dec 10 11:52:55s 0:07:05 -
-Rule sol88 1988 only - Dec 11 11:53:20s 0:06:40 -
-Rule sol88 1988 only - Dec 12 11:53:50s 0:06:10 -
-Rule sol88 1988 only - Dec 13 11:54:15s 0:05:45 -
-Rule sol88 1988 only - Dec 14 11:54:45s 0:05:15 -
-Rule sol88 1988 only - Dec 15 11:55:15s 0:04:45 -
-Rule sol88 1988 only - Dec 16 11:55:45s 0:04:15 -
-Rule sol88 1988 only - Dec 17 11:56:15s 0:03:45 -
-Rule sol88 1988 only - Dec 18 11:56:40s 0:03:20 -
-Rule sol88 1988 only - Dec 19 11:57:10s 0:02:50 -
-Rule sol88 1988 only - Dec 20 11:57:40s 0:02:20 -
-Rule sol88 1988 only - Dec 21 11:58:10s 0:01:50 -
-Rule sol88 1988 only - Dec 22 11:58:40s 0:01:20 -
-Rule sol88 1988 only - Dec 23 11:59:10s 0:00:50 -
-Rule sol88 1988 only - Dec 24 11:59:40s 0:00:20 -
-Rule sol88 1988 only - Dec 25 12:00:10s -0:00:10 -
-Rule sol88 1988 only - Dec 26 12:00:40s -0:00:40 -
-Rule sol88 1988 only - Dec 27 12:01:10s -0:01:10 -
-Rule sol88 1988 only - Dec 28 12:01:40s -0:01:40 -
-Rule sol88 1988 only - Dec 29 12:02:10s -0:02:10 -
-Rule sol88 1988 only - Dec 30 12:02:35s -0:02:35 -
-Rule sol88 1988 only - Dec 31 12:03:05s -0:03:05 -
-
-# Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs
-# Before and after 1988, we'll operate on local mean solar time.
-
-# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
-Zone Asia/Riyadh88 3:07:04 - zzz 1988
- 3:07:04 sol88 zzz 1989
- 3:07:04 - zzz
-# For backward compatibility...
-Link Asia/Riyadh88 Mideast/Riyadh88
diff --git a/tools/zoneinfo/tzdata2008h/solar89 b/tools/zoneinfo/tzdata2008h/solar89
deleted file mode 100644
index 8c48531..0000000
--- a/tools/zoneinfo/tzdata2008h/solar89
+++ /dev/null
@@ -1,393 +0,0 @@
-# @(#)solar89 8.1
-
-# Apparent noon times below are for Riyadh; they're a bit off for other places.
-# Times were computed using a formula provided by the U. S. Naval Observatory:
-# eqt = -105.8 * sin(l) + 596.2 * sin(2 * l) + 4.4 * sin(3 * l)
-# -12.7 * sin(4 * l) - 429.0 * cos(l) - 2.1 * cos (2 * l)
-# + 19.3 * cos(3 * l);
-# where l is the "mean longitude of the Sun" given by
-# l = 279.642 degrees + 0.985647 * d
-# and d is the interval in days from January 0, 0 hours Universal Time
-# (equaling the day of the year plus the fraction of a day from zero hours).
-# The accuracy of the formula is plus or minus three seconds.
-#
-# Rounding to the nearest five seconds results in fewer than
-# 256 different "time types"--a limit that's faced because time types are
-# stored on disk as unsigned chars.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule sol89 1989 only - Jan 1 12:03:35s -0:03:35 -
-Rule sol89 1989 only - Jan 2 12:04:05s -0:04:05 -
-Rule sol89 1989 only - Jan 3 12:04:30s -0:04:30 -
-Rule sol89 1989 only - Jan 4 12:05:00s -0:05:00 -
-Rule sol89 1989 only - Jan 5 12:05:25s -0:05:25 -
-Rule sol89 1989 only - Jan 6 12:05:50s -0:05:50 -
-Rule sol89 1989 only - Jan 7 12:06:15s -0:06:15 -
-Rule sol89 1989 only - Jan 8 12:06:45s -0:06:45 -
-Rule sol89 1989 only - Jan 9 12:07:10s -0:07:10 -
-Rule sol89 1989 only - Jan 10 12:07:35s -0:07:35 -
-Rule sol89 1989 only - Jan 11 12:07:55s -0:07:55 -
-Rule sol89 1989 only - Jan 12 12:08:20s -0:08:20 -
-Rule sol89 1989 only - Jan 13 12:08:45s -0:08:45 -
-Rule sol89 1989 only - Jan 14 12:09:05s -0:09:05 -
-Rule sol89 1989 only - Jan 15 12:09:25s -0:09:25 -
-Rule sol89 1989 only - Jan 16 12:09:45s -0:09:45 -
-Rule sol89 1989 only - Jan 17 12:10:05s -0:10:05 -
-Rule sol89 1989 only - Jan 18 12:10:25s -0:10:25 -
-Rule sol89 1989 only - Jan 19 12:10:45s -0:10:45 -
-Rule sol89 1989 only - Jan 20 12:11:05s -0:11:05 -
-Rule sol89 1989 only - Jan 21 12:11:20s -0:11:20 -
-Rule sol89 1989 only - Jan 22 12:11:35s -0:11:35 -
-Rule sol89 1989 only - Jan 23 12:11:55s -0:11:55 -
-Rule sol89 1989 only - Jan 24 12:12:10s -0:12:10 -
-Rule sol89 1989 only - Jan 25 12:12:20s -0:12:20 -
-Rule sol89 1989 only - Jan 26 12:12:35s -0:12:35 -
-Rule sol89 1989 only - Jan 27 12:12:50s -0:12:50 -
-Rule sol89 1989 only - Jan 28 12:13:00s -0:13:00 -
-Rule sol89 1989 only - Jan 29 12:13:10s -0:13:10 -
-Rule sol89 1989 only - Jan 30 12:13:20s -0:13:20 -
-Rule sol89 1989 only - Jan 31 12:13:30s -0:13:30 -
-Rule sol89 1989 only - Feb 1 12:13:40s -0:13:40 -
-Rule sol89 1989 only - Feb 2 12:13:45s -0:13:45 -
-Rule sol89 1989 only - Feb 3 12:13:55s -0:13:55 -
-Rule sol89 1989 only - Feb 4 12:14:00s -0:14:00 -
-Rule sol89 1989 only - Feb 5 12:14:05s -0:14:05 -
-Rule sol89 1989 only - Feb 6 12:14:10s -0:14:10 -
-Rule sol89 1989 only - Feb 7 12:14:10s -0:14:10 -
-Rule sol89 1989 only - Feb 8 12:14:15s -0:14:15 -
-Rule sol89 1989 only - Feb 9 12:14:15s -0:14:15 -
-Rule sol89 1989 only - Feb 10 12:14:20s -0:14:20 -
-Rule sol89 1989 only - Feb 11 12:14:20s -0:14:20 -
-Rule sol89 1989 only - Feb 12 12:14:20s -0:14:20 -
-Rule sol89 1989 only - Feb 13 12:14:15s -0:14:15 -
-Rule sol89 1989 only - Feb 14 12:14:15s -0:14:15 -
-Rule sol89 1989 only - Feb 15 12:14:10s -0:14:10 -
-Rule sol89 1989 only - Feb 16 12:14:10s -0:14:10 -
-Rule sol89 1989 only - Feb 17 12:14:05s -0:14:05 -
-Rule sol89 1989 only - Feb 18 12:14:00s -0:14:00 -
-Rule sol89 1989 only - Feb 19 12:13:55s -0:13:55 -
-Rule sol89 1989 only - Feb 20 12:13:50s -0:13:50 -
-Rule sol89 1989 only - Feb 21 12:13:40s -0:13:40 -
-Rule sol89 1989 only - Feb 22 12:13:35s -0:13:35 -
-Rule sol89 1989 only - Feb 23 12:13:25s -0:13:25 -
-Rule sol89 1989 only - Feb 24 12:13:15s -0:13:15 -
-Rule sol89 1989 only - Feb 25 12:13:05s -0:13:05 -
-Rule sol89 1989 only - Feb 26 12:12:55s -0:12:55 -
-Rule sol89 1989 only - Feb 27 12:12:45s -0:12:45 -
-Rule sol89 1989 only - Feb 28 12:12:35s -0:12:35 -
-Rule sol89 1989 only - Mar 1 12:12:25s -0:12:25 -
-Rule sol89 1989 only - Mar 2 12:12:10s -0:12:10 -
-Rule sol89 1989 only - Mar 3 12:12:00s -0:12:00 -
-Rule sol89 1989 only - Mar 4 12:11:45s -0:11:45 -
-Rule sol89 1989 only - Mar 5 12:11:35s -0:11:35 -
-Rule sol89 1989 only - Mar 6 12:11:20s -0:11:20 -
-Rule sol89 1989 only - Mar 7 12:11:05s -0:11:05 -
-Rule sol89 1989 only - Mar 8 12:10:50s -0:10:50 -
-Rule sol89 1989 only - Mar 9 12:10:35s -0:10:35 -
-Rule sol89 1989 only - Mar 10 12:10:20s -0:10:20 -
-Rule sol89 1989 only - Mar 11 12:10:05s -0:10:05 -
-Rule sol89 1989 only - Mar 12 12:09:50s -0:09:50 -
-Rule sol89 1989 only - Mar 13 12:09:30s -0:09:30 -
-Rule sol89 1989 only - Mar 14 12:09:15s -0:09:15 -
-Rule sol89 1989 only - Mar 15 12:09:00s -0:09:00 -
-Rule sol89 1989 only - Mar 16 12:08:40s -0:08:40 -
-Rule sol89 1989 only - Mar 17 12:08:25s -0:08:25 -
-Rule sol89 1989 only - Mar 18 12:08:05s -0:08:05 -
-Rule sol89 1989 only - Mar 19 12:07:50s -0:07:50 -
-Rule sol89 1989 only - Mar 20 12:07:30s -0:07:30 -
-Rule sol89 1989 only - Mar 21 12:07:15s -0:07:15 -
-Rule sol89 1989 only - Mar 22 12:06:55s -0:06:55 -
-Rule sol89 1989 only - Mar 23 12:06:35s -0:06:35 -
-Rule sol89 1989 only - Mar 24 12:06:20s -0:06:20 -
-Rule sol89 1989 only - Mar 25 12:06:00s -0:06:00 -
-Rule sol89 1989 only - Mar 26 12:05:40s -0:05:40 -
-Rule sol89 1989 only - Mar 27 12:05:25s -0:05:25 -
-Rule sol89 1989 only - Mar 28 12:05:05s -0:05:05 -
-Rule sol89 1989 only - Mar 29 12:04:50s -0:04:50 -
-Rule sol89 1989 only - Mar 30 12:04:30s -0:04:30 -
-Rule sol89 1989 only - Mar 31 12:04:10s -0:04:10 -
-Rule sol89 1989 only - Apr 1 12:03:55s -0:03:55 -
-Rule sol89 1989 only - Apr 2 12:03:35s -0:03:35 -
-Rule sol89 1989 only - Apr 3 12:03:20s -0:03:20 -
-Rule sol89 1989 only - Apr 4 12:03:00s -0:03:00 -
-Rule sol89 1989 only - Apr 5 12:02:45s -0:02:45 -
-Rule sol89 1989 only - Apr 6 12:02:25s -0:02:25 -
-Rule sol89 1989 only - Apr 7 12:02:10s -0:02:10 -
-Rule sol89 1989 only - Apr 8 12:01:50s -0:01:50 -
-Rule sol89 1989 only - Apr 9 12:01:35s -0:01:35 -
-Rule sol89 1989 only - Apr 10 12:01:20s -0:01:20 -
-Rule sol89 1989 only - Apr 11 12:01:05s -0:01:05 -
-Rule sol89 1989 only - Apr 12 12:00:50s -0:00:50 -
-Rule sol89 1989 only - Apr 13 12:00:35s -0:00:35 -
-Rule sol89 1989 only - Apr 14 12:00:20s -0:00:20 -
-Rule sol89 1989 only - Apr 15 12:00:05s -0:00:05 -
-Rule sol89 1989 only - Apr 16 11:59:50s 0:00:10 -
-Rule sol89 1989 only - Apr 17 11:59:35s 0:00:25 -
-Rule sol89 1989 only - Apr 18 11:59:20s 0:00:40 -
-Rule sol89 1989 only - Apr 19 11:59:10s 0:00:50 -
-Rule sol89 1989 only - Apr 20 11:58:55s 0:01:05 -
-Rule sol89 1989 only - Apr 21 11:58:45s 0:01:15 -
-Rule sol89 1989 only - Apr 22 11:58:30s 0:01:30 -
-Rule sol89 1989 only - Apr 23 11:58:20s 0:01:40 -
-Rule sol89 1989 only - Apr 24 11:58:10s 0:01:50 -
-Rule sol89 1989 only - Apr 25 11:58:00s 0:02:00 -
-Rule sol89 1989 only - Apr 26 11:57:50s 0:02:10 -
-Rule sol89 1989 only - Apr 27 11:57:40s 0:02:20 -
-Rule sol89 1989 only - Apr 28 11:57:30s 0:02:30 -
-Rule sol89 1989 only - Apr 29 11:57:20s 0:02:40 -
-Rule sol89 1989 only - Apr 30 11:57:15s 0:02:45 -
-Rule sol89 1989 only - May 1 11:57:05s 0:02:55 -
-Rule sol89 1989 only - May 2 11:57:00s 0:03:00 -
-Rule sol89 1989 only - May 3 11:56:50s 0:03:10 -
-Rule sol89 1989 only - May 4 11:56:45s 0:03:15 -
-Rule sol89 1989 only - May 5 11:56:40s 0:03:20 -
-Rule sol89 1989 only - May 6 11:56:35s 0:03:25 -
-Rule sol89 1989 only - May 7 11:56:30s 0:03:30 -
-Rule sol89 1989 only - May 8 11:56:30s 0:03:30 -
-Rule sol89 1989 only - May 9 11:56:25s 0:03:35 -
-Rule sol89 1989 only - May 10 11:56:25s 0:03:35 -
-Rule sol89 1989 only - May 11 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 12 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 13 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 14 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 15 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 16 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 17 11:56:20s 0:03:40 -
-Rule sol89 1989 only - May 18 11:56:25s 0:03:35 -
-Rule sol89 1989 only - May 19 11:56:25s 0:03:35 -
-Rule sol89 1989 only - May 20 11:56:30s 0:03:30 -
-Rule sol89 1989 only - May 21 11:56:35s 0:03:25 -
-Rule sol89 1989 only - May 22 11:56:35s 0:03:25 -
-Rule sol89 1989 only - May 23 11:56:40s 0:03:20 -
-Rule sol89 1989 only - May 24 11:56:45s 0:03:15 -
-Rule sol89 1989 only - May 25 11:56:55s 0:03:05 -
-Rule sol89 1989 only - May 26 11:57:00s 0:03:00 -
-Rule sol89 1989 only - May 27 11:57:05s 0:02:55 -
-Rule sol89 1989 only - May 28 11:57:15s 0:02:45 -
-Rule sol89 1989 only - May 29 11:57:20s 0:02:40 -
-Rule sol89 1989 only - May 30 11:57:30s 0:02:30 -
-Rule sol89 1989 only - May 31 11:57:35s 0:02:25 -
-Rule sol89 1989 only - Jun 1 11:57:45s 0:02:15 -
-Rule sol89 1989 only - Jun 2 11:57:55s 0:02:05 -
-Rule sol89 1989 only - Jun 3 11:58:05s 0:01:55 -
-Rule sol89 1989 only - Jun 4 11:58:15s 0:01:45 -
-Rule sol89 1989 only - Jun 5 11:58:25s 0:01:35 -
-Rule sol89 1989 only - Jun 6 11:58:35s 0:01:25 -
-Rule sol89 1989 only - Jun 7 11:58:45s 0:01:15 -
-Rule sol89 1989 only - Jun 8 11:59:00s 0:01:00 -
-Rule sol89 1989 only - Jun 9 11:59:10s 0:00:50 -
-Rule sol89 1989 only - Jun 10 11:59:20s 0:00:40 -
-Rule sol89 1989 only - Jun 11 11:59:35s 0:00:25 -
-Rule sol89 1989 only - Jun 12 11:59:45s 0:00:15 -
-Rule sol89 1989 only - Jun 13 12:00:00s 0:00:00 -
-Rule sol89 1989 only - Jun 14 12:00:10s -0:00:10 -
-Rule sol89 1989 only - Jun 15 12:00:25s -0:00:25 -
-Rule sol89 1989 only - Jun 16 12:00:35s -0:00:35 -
-Rule sol89 1989 only - Jun 17 12:00:50s -0:00:50 -
-Rule sol89 1989 only - Jun 18 12:01:05s -0:01:05 -
-Rule sol89 1989 only - Jun 19 12:01:15s -0:01:15 -
-Rule sol89 1989 only - Jun 20 12:01:30s -0:01:30 -
-Rule sol89 1989 only - Jun 21 12:01:40s -0:01:40 -
-Rule sol89 1989 only - Jun 22 12:01:55s -0:01:55 -
-Rule sol89 1989 only - Jun 23 12:02:10s -0:02:10 -
-Rule sol89 1989 only - Jun 24 12:02:20s -0:02:20 -
-Rule sol89 1989 only - Jun 25 12:02:35s -0:02:35 -
-Rule sol89 1989 only - Jun 26 12:02:45s -0:02:45 -
-Rule sol89 1989 only - Jun 27 12:03:00s -0:03:00 -
-Rule sol89 1989 only - Jun 28 12:03:10s -0:03:10 -
-Rule sol89 1989 only - Jun 29 12:03:25s -0:03:25 -
-Rule sol89 1989 only - Jun 30 12:03:35s -0:03:35 -
-Rule sol89 1989 only - Jul 1 12:03:45s -0:03:45 -
-Rule sol89 1989 only - Jul 2 12:04:00s -0:04:00 -
-Rule sol89 1989 only - Jul 3 12:04:10s -0:04:10 -
-Rule sol89 1989 only - Jul 4 12:04:20s -0:04:20 -
-Rule sol89 1989 only - Jul 5 12:04:30s -0:04:30 -
-Rule sol89 1989 only - Jul 6 12:04:40s -0:04:40 -
-Rule sol89 1989 only - Jul 7 12:04:50s -0:04:50 -
-Rule sol89 1989 only - Jul 8 12:05:00s -0:05:00 -
-Rule sol89 1989 only - Jul 9 12:05:10s -0:05:10 -
-Rule sol89 1989 only - Jul 10 12:05:20s -0:05:20 -
-Rule sol89 1989 only - Jul 11 12:05:25s -0:05:25 -
-Rule sol89 1989 only - Jul 12 12:05:35s -0:05:35 -
-Rule sol89 1989 only - Jul 13 12:05:40s -0:05:40 -
-Rule sol89 1989 only - Jul 14 12:05:50s -0:05:50 -
-Rule sol89 1989 only - Jul 15 12:05:55s -0:05:55 -
-Rule sol89 1989 only - Jul 16 12:06:00s -0:06:00 -
-Rule sol89 1989 only - Jul 17 12:06:05s -0:06:05 -
-Rule sol89 1989 only - Jul 18 12:06:10s -0:06:10 -
-Rule sol89 1989 only - Jul 19 12:06:15s -0:06:15 -
-Rule sol89 1989 only - Jul 20 12:06:20s -0:06:20 -
-Rule sol89 1989 only - Jul 21 12:06:20s -0:06:20 -
-Rule sol89 1989 only - Jul 22 12:06:25s -0:06:25 -
-Rule sol89 1989 only - Jul 23 12:06:25s -0:06:25 -
-Rule sol89 1989 only - Jul 24 12:06:30s -0:06:30 -
-Rule sol89 1989 only - Jul 25 12:06:30s -0:06:30 -
-Rule sol89 1989 only - Jul 26 12:06:30s -0:06:30 -
-Rule sol89 1989 only - Jul 27 12:06:30s -0:06:30 -
-Rule sol89 1989 only - Jul 28 12:06:30s -0:06:30 -
-Rule sol89 1989 only - Jul 29 12:06:25s -0:06:25 -
-Rule sol89 1989 only - Jul 30 12:06:25s -0:06:25 -
-Rule sol89 1989 only - Jul 31 12:06:20s -0:06:20 -
-Rule sol89 1989 only - Aug 1 12:06:20s -0:06:20 -
-Rule sol89 1989 only - Aug 2 12:06:15s -0:06:15 -
-Rule sol89 1989 only - Aug 3 12:06:10s -0:06:10 -
-Rule sol89 1989 only - Aug 4 12:06:05s -0:06:05 -
-Rule sol89 1989 only - Aug 5 12:06:00s -0:06:00 -
-Rule sol89 1989 only - Aug 6 12:05:50s -0:05:50 -
-Rule sol89 1989 only - Aug 7 12:05:45s -0:05:45 -
-Rule sol89 1989 only - Aug 8 12:05:35s -0:05:35 -
-Rule sol89 1989 only - Aug 9 12:05:30s -0:05:30 -
-Rule sol89 1989 only - Aug 10 12:05:20s -0:05:20 -
-Rule sol89 1989 only - Aug 11 12:05:10s -0:05:10 -
-Rule sol89 1989 only - Aug 12 12:05:00s -0:05:00 -
-Rule sol89 1989 only - Aug 13 12:04:50s -0:04:50 -
-Rule sol89 1989 only - Aug 14 12:04:40s -0:04:40 -
-Rule sol89 1989 only - Aug 15 12:04:30s -0:04:30 -
-Rule sol89 1989 only - Aug 16 12:04:15s -0:04:15 -
-Rule sol89 1989 only - Aug 17 12:04:05s -0:04:05 -
-Rule sol89 1989 only - Aug 18 12:03:50s -0:03:50 -
-Rule sol89 1989 only - Aug 19 12:03:35s -0:03:35 -
-Rule sol89 1989 only - Aug 20 12:03:25s -0:03:25 -
-Rule sol89 1989 only - Aug 21 12:03:10s -0:03:10 -
-Rule sol89 1989 only - Aug 22 12:02:55s -0:02:55 -
-Rule sol89 1989 only - Aug 23 12:02:40s -0:02:40 -
-Rule sol89 1989 only - Aug 24 12:02:20s -0:02:20 -
-Rule sol89 1989 only - Aug 25 12:02:05s -0:02:05 -
-Rule sol89 1989 only - Aug 26 12:01:50s -0:01:50 -
-Rule sol89 1989 only - Aug 27 12:01:30s -0:01:30 -
-Rule sol89 1989 only - Aug 28 12:01:15s -0:01:15 -
-Rule sol89 1989 only - Aug 29 12:00:55s -0:00:55 -
-Rule sol89 1989 only - Aug 30 12:00:40s -0:00:40 -
-Rule sol89 1989 only - Aug 31 12:00:20s -0:00:20 -
-Rule sol89 1989 only - Sep 1 12:00:00s 0:00:00 -
-Rule sol89 1989 only - Sep 2 11:59:45s 0:00:15 -
-Rule sol89 1989 only - Sep 3 11:59:25s 0:00:35 -
-Rule sol89 1989 only - Sep 4 11:59:05s 0:00:55 -
-Rule sol89 1989 only - Sep 5 11:58:45s 0:01:15 -
-Rule sol89 1989 only - Sep 6 11:58:25s 0:01:35 -
-Rule sol89 1989 only - Sep 7 11:58:05s 0:01:55 -
-Rule sol89 1989 only - Sep 8 11:57:45s 0:02:15 -
-Rule sol89 1989 only - Sep 9 11:57:20s 0:02:40 -
-Rule sol89 1989 only - Sep 10 11:57:00s 0:03:00 -
-Rule sol89 1989 only - Sep 11 11:56:40s 0:03:20 -
-Rule sol89 1989 only - Sep 12 11:56:20s 0:03:40 -
-Rule sol89 1989 only - Sep 13 11:56:00s 0:04:00 -
-Rule sol89 1989 only - Sep 14 11:55:35s 0:04:25 -
-Rule sol89 1989 only - Sep 15 11:55:15s 0:04:45 -
-Rule sol89 1989 only - Sep 16 11:54:55s 0:05:05 -
-Rule sol89 1989 only - Sep 17 11:54:35s 0:05:25 -
-Rule sol89 1989 only - Sep 18 11:54:10s 0:05:50 -
-Rule sol89 1989 only - Sep 19 11:53:50s 0:06:10 -
-Rule sol89 1989 only - Sep 20 11:53:30s 0:06:30 -
-Rule sol89 1989 only - Sep 21 11:53:10s 0:06:50 -
-Rule sol89 1989 only - Sep 22 11:52:45s 0:07:15 -
-Rule sol89 1989 only - Sep 23 11:52:25s 0:07:35 -
-Rule sol89 1989 only - Sep 24 11:52:05s 0:07:55 -
-Rule sol89 1989 only - Sep 25 11:51:45s 0:08:15 -
-Rule sol89 1989 only - Sep 26 11:51:25s 0:08:35 -
-Rule sol89 1989 only - Sep 27 11:51:05s 0:08:55 -
-Rule sol89 1989 only - Sep 28 11:50:40s 0:09:20 -
-Rule sol89 1989 only - Sep 29 11:50:20s 0:09:40 -
-Rule sol89 1989 only - Sep 30 11:50:00s 0:10:00 -
-Rule sol89 1989 only - Oct 1 11:49:45s 0:10:15 -
-Rule sol89 1989 only - Oct 2 11:49:25s 0:10:35 -
-Rule sol89 1989 only - Oct 3 11:49:05s 0:10:55 -
-Rule sol89 1989 only - Oct 4 11:48:45s 0:11:15 -
-Rule sol89 1989 only - Oct 5 11:48:30s 0:11:30 -
-Rule sol89 1989 only - Oct 6 11:48:10s 0:11:50 -
-Rule sol89 1989 only - Oct 7 11:47:50s 0:12:10 -
-Rule sol89 1989 only - Oct 8 11:47:35s 0:12:25 -
-Rule sol89 1989 only - Oct 9 11:47:20s 0:12:40 -
-Rule sol89 1989 only - Oct 10 11:47:00s 0:13:00 -
-Rule sol89 1989 only - Oct 11 11:46:45s 0:13:15 -
-Rule sol89 1989 only - Oct 12 11:46:30s 0:13:30 -
-Rule sol89 1989 only - Oct 13 11:46:15s 0:13:45 -
-Rule sol89 1989 only - Oct 14 11:46:00s 0:14:00 -
-Rule sol89 1989 only - Oct 15 11:45:50s 0:14:10 -
-Rule sol89 1989 only - Oct 16 11:45:35s 0:14:25 -
-Rule sol89 1989 only - Oct 17 11:45:20s 0:14:40 -
-Rule sol89 1989 only - Oct 18 11:45:10s 0:14:50 -
-Rule sol89 1989 only - Oct 19 11:45:00s 0:15:00 -
-Rule sol89 1989 only - Oct 20 11:44:50s 0:15:10 -
-Rule sol89 1989 only - Oct 21 11:44:40s 0:15:20 -
-Rule sol89 1989 only - Oct 22 11:44:30s 0:15:30 -
-Rule sol89 1989 only - Oct 23 11:44:20s 0:15:40 -
-Rule sol89 1989 only - Oct 24 11:44:10s 0:15:50 -
-Rule sol89 1989 only - Oct 25 11:44:05s 0:15:55 -
-Rule sol89 1989 only - Oct 26 11:44:00s 0:16:00 -
-Rule sol89 1989 only - Oct 27 11:43:50s 0:16:10 -
-Rule sol89 1989 only - Oct 28 11:43:45s 0:16:15 -
-Rule sol89 1989 only - Oct 29 11:43:40s 0:16:20 -
-Rule sol89 1989 only - Oct 30 11:43:40s 0:16:20 -
-Rule sol89 1989 only - Oct 31 11:43:35s 0:16:25 -
-Rule sol89 1989 only - Nov 1 11:43:35s 0:16:25 -
-Rule sol89 1989 only - Nov 2 11:43:35s 0:16:25 -
-Rule sol89 1989 only - Nov 3 11:43:30s 0:16:30 -
-Rule sol89 1989 only - Nov 4 11:43:35s 0:16:25 -
-Rule sol89 1989 only - Nov 5 11:43:35s 0:16:25 -
-Rule sol89 1989 only - Nov 6 11:43:35s 0:16:25 -
-Rule sol89 1989 only - Nov 7 11:43:40s 0:16:20 -
-Rule sol89 1989 only - Nov 8 11:43:45s 0:16:15 -
-Rule sol89 1989 only - Nov 9 11:43:50s 0:16:10 -
-Rule sol89 1989 only - Nov 10 11:43:55s 0:16:05 -
-Rule sol89 1989 only - Nov 11 11:44:00s 0:16:00 -
-Rule sol89 1989 only - Nov 12 11:44:05s 0:15:55 -
-Rule sol89 1989 only - Nov 13 11:44:15s 0:15:45 -
-Rule sol89 1989 only - Nov 14 11:44:25s 0:15:35 -
-Rule sol89 1989 only - Nov 15 11:44:35s 0:15:25 -
-Rule sol89 1989 only - Nov 16 11:44:45s 0:15:15 -
-Rule sol89 1989 only - Nov 17 11:44:55s 0:15:05 -
-Rule sol89 1989 only - Nov 18 11:45:10s 0:14:50 -
-Rule sol89 1989 only - Nov 19 11:45:20s 0:14:40 -
-Rule sol89 1989 only - Nov 20 11:45:35s 0:14:25 -
-Rule sol89 1989 only - Nov 21 11:45:50s 0:14:10 -
-Rule sol89 1989 only - Nov 22 11:46:05s 0:13:55 -
-Rule sol89 1989 only - Nov 23 11:46:25s 0:13:35 -
-Rule sol89 1989 only - Nov 24 11:46:40s 0:13:20 -
-Rule sol89 1989 only - Nov 25 11:47:00s 0:13:00 -
-Rule sol89 1989 only - Nov 26 11:47:20s 0:12:40 -
-Rule sol89 1989 only - Nov 27 11:47:35s 0:12:25 -
-Rule sol89 1989 only - Nov 28 11:47:55s 0:12:05 -
-Rule sol89 1989 only - Nov 29 11:48:20s 0:11:40 -
-Rule sol89 1989 only - Nov 30 11:48:40s 0:11:20 -
-Rule sol89 1989 only - Dec 1 11:49:00s 0:11:00 -
-Rule sol89 1989 only - Dec 2 11:49:25s 0:10:35 -
-Rule sol89 1989 only - Dec 3 11:49:50s 0:10:10 -
-Rule sol89 1989 only - Dec 4 11:50:15s 0:09:45 -
-Rule sol89 1989 only - Dec 5 11:50:35s 0:09:25 -
-Rule sol89 1989 only - Dec 6 11:51:00s 0:09:00 -
-Rule sol89 1989 only - Dec 7 11:51:30s 0:08:30 -
-Rule sol89 1989 only - Dec 8 11:51:55s 0:08:05 -
-Rule sol89 1989 only - Dec 9 11:52:20s 0:07:40 -
-Rule sol89 1989 only - Dec 10 11:52:50s 0:07:10 -
-Rule sol89 1989 only - Dec 11 11:53:15s 0:06:45 -
-Rule sol89 1989 only - Dec 12 11:53:45s 0:06:15 -
-Rule sol89 1989 only - Dec 13 11:54:10s 0:05:50 -
-Rule sol89 1989 only - Dec 14 11:54:40s 0:05:20 -
-Rule sol89 1989 only - Dec 15 11:55:10s 0:04:50 -
-Rule sol89 1989 only - Dec 16 11:55:40s 0:04:20 -
-Rule sol89 1989 only - Dec 17 11:56:05s 0:03:55 -
-Rule sol89 1989 only - Dec 18 11:56:35s 0:03:25 -
-Rule sol89 1989 only - Dec 19 11:57:05s 0:02:55 -
-Rule sol89 1989 only - Dec 20 11:57:35s 0:02:25 -
-Rule sol89 1989 only - Dec 21 11:58:05s 0:01:55 -
-Rule sol89 1989 only - Dec 22 11:58:35s 0:01:25 -
-Rule sol89 1989 only - Dec 23 11:59:05s 0:00:55 -
-Rule sol89 1989 only - Dec 24 11:59:35s 0:00:25 -
-Rule sol89 1989 only - Dec 25 12:00:05s -0:00:05 -
-Rule sol89 1989 only - Dec 26 12:00:35s -0:00:35 -
-Rule sol89 1989 only - Dec 27 12:01:05s -0:01:05 -
-Rule sol89 1989 only - Dec 28 12:01:35s -0:01:35 -
-Rule sol89 1989 only - Dec 29 12:02:00s -0:02:00 -
-Rule sol89 1989 only - Dec 30 12:02:30s -0:02:30 -
-Rule sol89 1989 only - Dec 31 12:03:00s -0:03:00 -
-
-# Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs
-# Before and after 1989, we'll operate on local mean solar time.
-
-# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
-Zone Asia/Riyadh89 3:07:04 - zzz 1989
- 3:07:04 sol89 zzz 1990
- 3:07:04 - zzz
-# For backward compatibility...
-Link Asia/Riyadh89 Mideast/Riyadh89
diff --git a/tools/zoneinfo/tzdata2008h/southamerica b/tools/zoneinfo/tzdata2008h/southamerica
deleted file mode 100644
index 5dae61a..0000000
--- a/tools/zoneinfo/tzdata2008h/southamerica
+++ /dev/null
@@ -1,1390 +0,0 @@
-# @(#)southamerica 8.30
-# <pre>
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@elsie.nci.nih.gov for general use in the future).
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually. Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1990, and IATA SSIM is the source for entries afterwards.
-#
-# Earlier editions of these tables used the North American style (e.g. ARST and
-# ARDT for Argentine Standard and Daylight Time), but the following quote
-# suggests that it's better to use European style (e.g. ART and ARST).
-# I suggest the use of _Summer time_ instead of the more cumbersome
-# _daylight-saving time_. _Summer time_ seems to be in general use
-# in Europe and South America.
-# -- E O Cutler, _New York Times_ (1937-02-14), quoted in
-# H L Mencken, _The American Language: Supplement I_ (1960), p 466
-#
-# Earlier editions of these tables also used the North American style
-# for time zones in Brazil, but this was incorrect, as Brazilians say
-# "summer time". Reinaldo Goulart, a Sao Paulo businessman active in
-# the railroad sector, writes (1999-07-06):
-# The subject of time zones is currently a matter of discussion/debate in
-# Brazil. Let's say that "the Brasilia time" is considered the
-# "official time" because Brasilia is the capital city.
-# The other three time zones are called "Brasilia time "minus one" or
-# "plus one" or "plus two". As far as I know there is no such
-# name/designation as "Eastern Time" or "Central Time".
-# So I invented the following (English-language) abbreviations for now.
-# Corrections are welcome!
-# std dst
-# -2:00 FNT FNST Fernando de Noronha
-# -3:00 BRT BRST Brasilia
-# -4:00 AMT AMST Amazon
-# -5:00 ACT ACST Acre
-
-###############################################################################
-
-###############################################################################
-
-# Argentina
-
-# From Bob Devine (1988-01-28):
-# Argentina: first Sunday in October to first Sunday in April since 1976.
-# Double Summer time from 1969 to 1974. Switches at midnight.
-
-# From U. S. Naval Observatory (1988-01-199):
-# ARGENTINA 3 H BEHIND UTC
-
-# From Hernan G. Otero (1995-06-26):
-# I am sending modifications to the Argentine time zone table...
-# AR was chosen because they are the ISO letters that represent Argentina.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Arg 1930 only - Dec 1 0:00 1:00 S
-Rule Arg 1931 only - Apr 1 0:00 0 -
-Rule Arg 1931 only - Oct 15 0:00 1:00 S
-Rule Arg 1932 1940 - Mar 1 0:00 0 -
-Rule Arg 1932 1939 - Nov 1 0:00 1:00 S
-Rule Arg 1940 only - Jul 1 0:00 1:00 S
-Rule Arg 1941 only - Jun 15 0:00 0 -
-Rule Arg 1941 only - Oct 15 0:00 1:00 S
-Rule Arg 1943 only - Aug 1 0:00 0 -
-Rule Arg 1943 only - Oct 15 0:00 1:00 S
-Rule Arg 1946 only - Mar 1 0:00 0 -
-Rule Arg 1946 only - Oct 1 0:00 1:00 S
-Rule Arg 1963 only - Oct 1 0:00 0 -
-Rule Arg 1963 only - Dec 15 0:00 1:00 S
-Rule Arg 1964 1966 - Mar 1 0:00 0 -
-Rule Arg 1964 1966 - Oct 15 0:00 1:00 S
-Rule Arg 1967 only - Apr 2 0:00 0 -
-Rule Arg 1967 1968 - Oct Sun>=1 0:00 1:00 S
-Rule Arg 1968 1969 - Apr Sun>=1 0:00 0 -
-Rule Arg 1974 only - Jan 23 0:00 1:00 S
-Rule Arg 1974 only - May 1 0:00 0 -
-Rule Arg 1988 only - Dec 1 0:00 1:00 S
-#
-# From Hernan G. Otero (1995-06-26):
-# These corrections were contributed by InterSoft Argentina S.A.,
-# obtaining the data from the:
-# Talleres de Hidrografia Naval Argentina
-# (Argentine Naval Hydrography Institute)
-Rule Arg 1989 1993 - Mar Sun>=1 0:00 0 -
-Rule Arg 1989 1992 - Oct Sun>=15 0:00 1:00 S
-#
-# From Hernan G. Otero (1995-06-26):
-# From this moment on, the law that mandated the daylight saving
-# time corrections was derogated and no more modifications
-# to the time zones (for daylight saving) are now made.
-#
-# From Rives McDow (2000-01-10):
-# On October 3, 1999, 0:00 local, Argentina implemented daylight savings time,
-# which did not result in the switch of a time zone, as they stayed 9 hours
-# from the International Date Line.
-Rule Arg 1999 only - Oct Sun>=1 0:00 1:00 S
-# From Paul Eggert (2007-12-28):
-# DST was set to expire on March 5, not March 3, but since it was converted
-# to standard time on March 3 it's more convenient for us to pretend that
-# it ended on March 3.
-Rule Arg 2000 only - Mar 3 0:00 0 -
-#
-# From Peter Gradelski via Steffen Thorsen (2000-03-01):
-# We just checked with our Sao Paulo office and they say the government of
-# Argentina decided not to become one of the countries that go on or off DST.
-# So Buenos Aires should be -3 hours from GMT at all times.
-#
-# From Fabian L. Arce Jofre (2000-04-04):
-# The law that claimed DST for Argentina was derogated by President Fernando
-# de la Rua on March 2, 2000, because it would make people spend more energy
-# in the winter time, rather than less. The change took effect on March 3.
-#
-# From Mariano Absatz (2001-06-06):
-# one of the major newspapers here in Argentina said that the 1999
-# Timezone Law (which never was effectively applied) will (would?) be
-# in effect.... The article is at
-# http://ar.clarin.com/diario/2001-06-06/e-01701.htm
-# ... The Law itself is "Ley No 25155", sanctioned on 1999-08-25, enacted
-# 1999-09-17, and published 1999-09-21. The official publication is at:
-# http://www.boletin.jus.gov.ar/BON/Primera/1999/09-Septiembre/21/PDF/BO21-09-99LEG.PDF
-# Regretfully, you have to subscribe (and pay) for the on-line version....
-#
-# (2001-06-12):
-# the timezone for Argentina will not change next Sunday.
-# Apparently it will do so on Sunday 24th....
-# http://ar.clarin.com/diario/2001-06-12/s-03501.htm
-#
-# (2001-06-25):
-# Last Friday (yes, the last working day before the date of the change), the
-# Senate annulled the 1999 law that introduced the changes later postponed.
-# http://www.clarin.com.ar/diario/2001-06-22/s-03601.htm
-# It remains the vote of the Deputies..., but it will be the same....
-# This kind of things had always been done this way in Argentina.
-# We are still -03:00 all year round in all of the country.
-#
-# From Steffen Thorsen (2007-12-21):
-# A user (Leonardo Chaim) reported that Argentina will adopt DST....
-# all of the country (all Zone-entries) are affected. News reports like
-# http://www.lanacion.com.ar/opinion/nota.asp?nota_id=973037 indicate
-# that Argentina will use DST next year as well, from October to
-# March, although exact rules are not given.
-#
-# From Jesper Norgaard Welen (2007-12-26)
-# The last hurdle of Argentina DST is over, the proposal was approved in
-# the lower chamber too (Deputados) with a vote 192 for and 2 against.
-# By the way thanks to Mariano Absatz and Daniel Mario Vega for the link to
-# the original scanned proposal, where the dates and the zero hours are
-# clear and unambiguous...This is the article about final approval:
-# <a href="http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996">
-# http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996
-# </a>
-#
-# From Paul Eggert (2007-12-22):
-# For dates after mid-2008, the following rules are my guesses and
-# are quite possibly wrong, but are more likely than no DST at all.
-
-# From Alexander Krivenyshev (2008-09-05):
-# As per message from Carlos Alberto Fonseca Arauz (Nicaragua),
-# Argentina will start DST on Sunday October 19, 2008.
-#
-# <a href="http://www.worldtimezone.com/dst_news/dst_news_argentina03.html">
-# http://www.worldtimezone.com/dst_news/dst_news_argentina03.html
-# </a>
-# OR
-# <a href="http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)">
-# http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)
-# </a>
-
-# From Rodrigo Severo (2008-10-06):
-# Here is some info available at a Gentoo bug related to TZ on Argentina's DST:
-# ...
-# ------- Comment #1 from [jmdocile] 2008-10-06 16:28 0000 -------
-# Hi, there is a problem with timezone-data-2008e and maybe with
-# timezone-data-2008f
-# Argentinian law [Number] 25.155 is no longer valid.
-# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm">
-# http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm
-# </a>
-# The new one is law [Number] 26.350
-# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm">
-# http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm
-# </a>
-# So there is no summer time in Argentina for now.
-
-Rule Arg 2007 only - Dec 30 0:00 1:00 S
-Rule Arg 2008 max - Mar Sun>=15 0:00 0 -
-Rule Arg 2008 max - Oct Sun>=15 0:00 1:00 S
-
-# From Mariano Absatz (2004-05-21):
-# Today it was officially published that the Province of Mendoza is changing
-# its timezone this winter... starting tomorrow night....
-# http://www.gobernac.mendoza.gov.ar/boletin/pdf/20040521-27158-normas.pdf
-# From Paul Eggert (2004-05-24):
-# It's Law No. 7,210. This change is due to a public power emergency, so for
-# now we'll assume it's for this year only.
-#
-# From Paul Eggert (2006-03-22):
-# <a href="http://www.spicasc.net/horvera.html">
-# Hora de verano para la Republica Argentina (2003-06-08)
-# </a> says that standard time in Argentina from 1894-10-31
-# to 1920-05-01 was -4:16:48.25. Go with this more-precise value
-# over Shanks & Pottenger.
-#
-# From Mariano Absatz (2004-06-05):
-# These media articles from a major newspaper mostly cover the current state:
-# http://www.lanacion.com.ar/04/05/27/de_604825.asp
-# http://www.lanacion.com.ar/04/05/28/de_605203.asp
-#
-# The following eight (8) provinces pulled clocks back to UTC-04:00 at
-# midnight Monday May 31st. (that is, the night between 05/31 and 06/01).
-# Apparently, all nine provinces would go back to UTC-03:00 at the same
-# time in October 17th.
-#
-# Catamarca, Chubut, La Rioja, San Juan, San Luis, Santa Cruz,
-# Tierra del Fuego, Tucuman.
-#
-# From Mariano Absatz (2004-06-14):
-# ... this weekend, the Province of Tucuman decided it'd go back to UTC-03:00
-# yesterday midnight (that is, at 24:00 Saturday 12th), since the people's
-# annoyance with the change is much higher than the power savings obtained....
-#
-# From Gwillim Law (2004-06-14):
-# http://www.lanacion.com.ar/04/06/10/de_609078.asp ...
-# "The time change in Tierra del Fuego was a conflicted decision from
-# the start. The government had decreed that the measure would take
-# effect on June 1, but a normative error forced the new time to begin
-# three days earlier, from a Saturday to a Sunday....
-# Our understanding was that the change was originally scheduled to take place
-# on June 1 at 00:00 in Chubut, Santa Cruz, Tierra del Fuego (and some other
-# provinces). Sunday was May 30, only two days earlier. So the article
-# contains a contradiction. I would give more credence to the Saturday/Sunday
-# date than the "three days earlier" phrase, and conclude that Tierra del
-# Fuego set its clocks back at 2004-05-30 00:00.
-#
-# From Steffen Thorsen (2004-10-05):
-# The previous law 7210 which changed the province of Mendoza's time zone
-# back in May have been modified slightly in a new law 7277, which set the
-# new end date to 2004-09-26 (original date was 2004-10-17).
-# http://www.gobernac.mendoza.gov.ar/boletin/pdf/20040924-27244-normas.pdf
-#
-# From Mariano Absatz (2004-10-05):
-# San Juan changed from UTC-03:00 to UTC-04:00 at midnight between
-# Sunday, May 30th and Monday, May 31st. It changed back to UTC-03:00
-# at midnight between Saturday, July 24th and Sunday, July 25th....
-# http://www.sanjuan.gov.ar/prensa/archivo/000329.html
-# http://www.sanjuan.gov.ar/prensa/archivo/000426.html
-# http://www.sanjuan.gov.ar/prensa/archivo/000441.html
-
-# From Alex Krivenyshev (2008-01-17):
-# Here are articles that Argentina Province San Luis is planning to end DST
-# as earlier as upcoming Monday January 21, 2008 or February 2008:
-#
-# Provincia argentina retrasa reloj y marca diferencia con resto del pais
-# (Argentine Province delayed clock and mark difference with the rest of the
-# country)
-# <a href="http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel">
-# http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel
-# </a>
-#
-# Es inminente que en San Luis atrasen una hora los relojes
-# (It is imminent in San Luis clocks one hour delay)
-# <a href="http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414">
-# http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414
-# </a>
-#
-# <a href="http://www.worldtimezone.net/dst_news/dst_news_argentina02.html">
-# http://www.worldtimezone.net/dst_news/dst_news_argentina02.html
-# </a>
-
-# From Jesper Norgaard Welen (2008-01-18):
-# The page of the San Luis provincial government
-# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812">
-# http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812
-# </a>
-# confirms what Alex Krivenyshev has earlier sent to the tz
-# emailing list about that San Luis plans to return to standard
-# time much earlier than the rest of the country. It also
-# confirms that upon request the provinces San Juan and Mendoza
-# refused to follow San Luis in this change.
-#
-# The change is supposed to take place Monday the 21.st at 0:00
-# hours. As far as I understand it if this goes ahead, we need
-# a new timezone for San Luis (although there are also documented
-# independent changes in the southamerica file of San Luis in
-# 1990 and 1991 which has not been confirmed).
-
-# From Jesper Norgaard Welen (2008-01-25):
-# Unfortunately the below page has become defunct, about the San Luis
-# time change. Perhaps because it now is part of a group of pages "Most
-# important pages of 2008."
-#
-# You can use
-# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834">
-# http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834
-# </a>
-# instead it seems. Or use "Buscador" from the main page of the San Luis
-# government, and fill in "huso" and click OK, and you will get 3 pages
-# from which the first one is identical to the above.
-
-# From Mariano Absatz (2008-01-28):
-# I can confirm that the Province of San Luis (and so far only that
-# province) decided to go back to UTC-3 effective midnight Jan 20th 2008
-# (that is, Monday 21st at 0:00 is the time the clocks were delayed back
-# 1 hour), and they intend to keep UTC-3 as their timezone all year round
-# (that is, unless they change their mind any minute now).
-#
-# So we'll have to add yet another city to 'southamerica' (I think San
-# Luis city is the mos populated city in the Province, so it'd be
-# America/Argentina/San_Luis... of course I can't remember if San Luis's
-# history of particular changes goes along with Mendoza or San Juan :-(
-# (I only remember not being able to collect hard facts about San Luis
-# back in 2004, when these provinces changed to UTC-4 for a few days, I
-# mailed them personally and never got an answer).
-
-# From Paul Eggert (2008-06-30):
-# Unless otherwise specified, data are from Shanks & Pottenger through 1992,
-# from the IATA otherwise. As noted below, Shanks & Pottenger say that
-# America/Cordoba split into 6 subregions during 1991/1992, one of which
-# was America/San_Luis, but we haven't verified this yet so for now we'll
-# keep America/Cordoba a single region rather than splitting it into the
-# other 5 subregions.
-
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-#
-# Buenos Aires (BA), Capital Federal (CF),
-Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May # Cordoba Mean Time
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 Arg AR%sT
-#
-# Santa Fe (SF), Entre Rios (ER), Corrientes (CN), Misiones (MN), Chaco (CC),
-# Formosa (FM), Salta (SA), Santiago del Estero (SE), Cordoba (CB),
-# La Pampa (LP), Neuquen (NQ), Rio Negro (RN)
-#
-# Shanks & Pottenger also make the following claims, which we haven't verified:
-# - Formosa switched to -3:00 on 1991-01-07.
-# - Misiones switched to -3:00 on 1990-12-29.
-# - Chaco switched to -3:00 on 1991-01-04.
-# - Santiago del Estero switched to -4:00 on 1991-04-01,
-# then to -3:00 on 1991-04-26.
-#
-Zone America/Argentina/Cordoba -4:16:48 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1991 Mar 3
- -4:00 - WART 1991 Oct 20
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 Arg AR%sT
-#
-# Tucuman (TM)
-Zone America/Argentina/Tucuman -4:20:52 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1991 Mar 3
- -4:00 - WART 1991 Oct 20
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 Jun 1
- -4:00 - WART 2004 Jun 13
- -3:00 Arg AR%sT
-#
-# La Rioja (LR)
-Zone America/Argentina/La_Rioja -4:27:24 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1991 Mar 1
- -4:00 - WART 1991 May 7
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 Jun 1
- -4:00 - WART 2004 Jun 20
- -3:00 Arg AR%sT
-#
-# San Juan (SJ)
-Zone America/Argentina/San_Juan -4:34:04 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1991 Mar 1
- -4:00 - WART 1991 May 7
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 May 31
- -4:00 - WART 2004 Jul 25
- -3:00 Arg AR%sT
-#
-# Jujuy (JY)
-Zone America/Argentina/Jujuy -4:21:12 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1990 Mar 4
- -4:00 - WART 1990 Oct 28
- -4:00 1:00 WARST 1991 Mar 17
- -4:00 - WART 1991 Oct 6
- -3:00 1:00 ARST 1992
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 Arg AR%sT
-#
-# Catamarca (CT), Chubut (CH)
-Zone America/Argentina/Catamarca -4:23:08 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1991 Mar 3
- -4:00 - WART 1991 Oct 20
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 Jun 1
- -4:00 - WART 2004 Jun 20
- -3:00 Arg AR%sT
-#
-# Mendoza (MZ)
-Zone America/Argentina/Mendoza -4:35:16 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1990 Mar 4
- -4:00 - WART 1990 Oct 15
- -4:00 1:00 WARST 1991 Mar 1
- -4:00 - WART 1991 Oct 15
- -4:00 1:00 WARST 1992 Mar 1
- -4:00 - WART 1992 Oct 18
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 May 23
- -4:00 - WART 2004 Sep 26
- -3:00 Arg AR%sT
-#
-# San Luis (SL)
-Zone America/Argentina/San_Luis -4:25:24 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1990
- -3:00 1:00 ARST 1990 Mar 14
- -4:00 - WART 1990 Oct 15
- -4:00 1:00 WARST 1991 Mar 1
- -4:00 - WART 1991 Jun 1
- -3:00 - ART 1999 Oct 3
- -4:00 1:00 WARST 2000 Mar 3
- -3:00 - ART 2004 May 31
- -4:00 - WART 2004 Jul 25
- -3:00 Arg AR%sT 2008 Jan 21
- -3:00 - ART
-#
-# Santa Cruz (SC)
-Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May # Cordoba Mean Time
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 Jun 1
- -4:00 - WART 2004 Jun 20
- -3:00 Arg AR%sT
-#
-# Tierra del Fuego, Antartida e Islas del Atlantico Sur (TF)
-Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31
- -4:16:48 - CMT 1920 May # Cordoba Mean Time
- -4:00 - ART 1930 Dec
- -4:00 Arg AR%sT 1969 Oct 5
- -3:00 Arg AR%sT 1999 Oct 3
- -4:00 Arg AR%sT 2000 Mar 3
- -3:00 - ART 2004 May 30
- -4:00 - WART 2004 Jun 20
- -3:00 Arg AR%sT
-
-# Aruba
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Aruba -4:40:24 - LMT 1912 Feb 12 # Oranjestad
- -4:30 - ANT 1965 # Netherlands Antilles Time
- -4:00 - AST
-
-# Bolivia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/La_Paz -4:32:36 - LMT 1890
- -4:32:36 - CMT 1931 Oct 15 # Calamarca MT
- -4:32:36 1:00 BOST 1932 Mar 21 # Bolivia ST
- -4:00 - BOT # Bolivia Time
-
-# Brazil
-
-# From Paul Eggert (1993-11-18):
-# The mayor of Rio recently attempted to change the time zone rules
-# just in his city, in order to leave more summer time for the tourist trade.
-# The rule change lasted only part of the day;
-# the federal government refused to follow the city's rules, and business
-# was in a chaos, so the mayor backed down that afternoon.
-
-# From IATA SSIM (1996-02):
-# _Only_ the following states in BR1 observe DST: Rio Grande do Sul (RS),
-# Santa Catarina (SC), Parana (PR), Sao Paulo (SP), Rio de Janeiro (RJ),
-# Espirito Santo (ES), Minas Gerais (MG), Bahia (BA), Goias (GO),
-# Distrito Federal (DF), Tocantins (TO), Sergipe [SE] and Alagoas [AL].
-# [The last three states are new to this issue of the IATA SSIM.]
-
-# From Gwillim Law (1996-10-07):
-# Geography, history (Tocantins was part of Goias until 1989), and other
-# sources of time zone information lead me to believe that AL, SE, and TO were
-# always in BR1, and so the only change was whether or not they observed DST....
-# The earliest issue of the SSIM I have is 2/91. Each issue from then until
-# 9/95 says that DST is observed only in the ten states I quoted from 9/95,
-# along with Mato Grosso (MT) and Mato Grosso do Sul (MS), which are in BR2
-# (UTC-4).... The other two time zones given for Brazil are BR3, which is
-# UTC-5, no DST, and applies only in the state of Acre (AC); and BR4, which is
-# UTC-2, and applies to Fernando de Noronha (formerly FN, but I believe it's
-# become part of the state of Pernambuco). The boundary between BR1 and BR2
-# has never been clearly stated. They've simply been called East and West.
-# However, some conclusions can be drawn from another IATA manual: the Airline
-# Coding Directory, which lists close to 400 airports in Brazil. For each
-# airport it gives a time zone which is coded to the SSIM. From that
-# information, I'm led to conclude that the states of Amapa (AP), Ceara (CE),
-# Maranhao (MA), Paraiba (PR), Pernambuco (PE), Piaui (PI), and Rio Grande do
-# Norte (RN), and the eastern part of Para (PA) are all in BR1 without DST.
-
-# From Marcos Tadeu (1998-09-27):
-# <a href="http://pcdsh01.on.br/verao1.html">
-# Brazilian official page
-# </a>
-
-# From Jesper Norgaard (2000-11-03):
-# [For an official list of which regions in Brazil use which time zones, see:]
-# http://pcdsh01.on.br/Fusbr.htm
-# http://pcdsh01.on.br/Fusbrhv.htm
-
-# From Celso Doria via David Madeo (2002-10-09):
-# The reason for the delay this year has to do with elections in Brazil.
-#
-# Unlike in the United States, elections in Brazil are 100% computerized and
-# the results are known almost immediately. Yesterday, it was the first
-# round of the elections when 115 million Brazilians voted for President,
-# Governor, Senators, Federal Deputies, and State Deputies. Nobody is
-# counting (or re-counting) votes anymore and we know there will be a second
-# round for the Presidency and also for some Governors. The 2nd round will
-# take place on October 27th.
-#
-# The reason why the DST will only begin November 3rd is that the thousands
-# of electoral machines used cannot have their time changed, and since the
-# Constitution says the elections must begin at 8:00 AM and end at 5:00 PM,
-# the Government decided to postpone DST, instead of changing the Constitution
-# (maybe, for the next elections, it will be possible to change the clock)...
-
-# From Rodrigo Severo (2004-10-04):
-# It's just the biannual change made necessary by the much hyped, supposedly
-# modern Brazilian eletronic voting machines which, apparently, can't deal
-# with a time change between the first and the second rounds of the elections.
-
-# From Steffen Thorsen (2007-09-20):
-# Brazil will start DST on 2007-10-14 00:00 and end on 2008-02-17 00:00:
-# http://www.mme.gov.br/site/news/detail.do;jsessionid=BBA06811AFCAAC28F0285210913513DA?newsId=13975
-
-# From Paul Schulze (2008-06-24):
-# ...by law number 11.662 of April 24, 2008 (published in the "Diario
-# Oficial da Uniao"...) in Brazil there are changes in the timezones,
-# effective today (00:00am at June 24, 2008) as follows:
-#
-# a) The timezone UTC+5 is e[x]tinguished, with all the Acre state and the
-# part of the Amazonas state that had this timezone now being put to the
-# timezone UTC+4
-# b) The whole Para state now is put at timezone UTC+3, instead of just
-# part of it, as was before.
-#
-# This change follows a proposal of senator Tiao Viana of Acre state, that
-# proposed it due to concerns about open television channels displaying
-# programs inappropriate to youths in the states that had the timezone
-# UTC+5 too early in the night. In the occasion, some more corrections
-# were proposed, trying to unify the timezones of any given state. This
-# change modifies timezone rules defined in decree 2.784 of 18 June,
-# 1913.
-
-# From Rodrigo Severo (2008-06-24):
-# Just correcting the URL:
-# <a href="https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=3Ddo&secao=3D1&pagina=3D1&data=3D25/04/2008">
-# https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=3Ddo&secao=3D1&pagina=3D1&data=3D25/04/2008
-# </a>
-#
-# As a result of the above Decree I believe the America/Rio_Branco
-# timezone shall be modified from UTC-5 to UTC-4 and a new timezone shall
-# be created to represent the the west side of the Para State. I
-# suggest this new timezone be called Santarem as the most
-# important/populated city in the affected area.
-#
-# This new timezone would be the same as the Rio_Branco timezone up to
-# the 2008/06/24 change which would be to UTC-3 instead of UTC-4.
-
-# From Alex Krivenyshev (2008-06-24):
-# This is a quick reference page for New and Old Brazil Time Zones map.
-# <a href="http://www.worldtimezone.com/brazil-time-new-old.php">
-# http://www.worldtimezone.com/brazil-time-new-old.php
-# </a>
-#
-# - 4 time zones replaced by 3 time zones-eliminating time zone UTC- 05
-# (state Acre and the part of the Amazonas will be UTC/GMT- 04) - western
-# part of Par state is moving to one timezone UTC- 03 (from UTC -04).
-
-# From Paul Eggert (2002-10-10):
-# The official decrees referenced below are mostly taken from
-# <a href="http://pcdsh01.on.br/DecHV.html">
-# Decretos sobre o Horario de Verao no Brasil
-# </a>.
-
-# From Steffen Thorsen (2008-08-29):
-# As announced by the government and many newspapers in Brazil late
-# yesterday, Brazil will start DST on 2008-10-19 (need to change rule) and
-# it will end on 2009-02-15 (current rule for Brazil is fine). Based on
-# past years experience with the elections, there was a good chance that
-# the start was postponed to November, but it did not happen this year.
-#
-# It has not yet been posted to http://pcdsh01.on.br/DecHV.html
-#
-# An official page about it:
-# <a href="http://www.mme.gov.br/site/news/detail.do?newsId=16722">
-# http://www.mme.gov.br/site/news/detail.do?newsId=16722
-# </a>
-# Note that this link does not always work directly, but must be accessed
-# by going to
-# <a href="http://www.mme.gov.br/first">
-# http://www.mme.gov.br/first
-# </a>
-#
-# One example link that works directly:
-# <a href="http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54">
-# http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54
-# (Portuguese)
-# </a>
-#
-# We have a written a short article about it as well:
-# <a href="http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html">
-# http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
-# </a>
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# Decree <a href="http://pcdsh01.on.br/HV20466.htm">20,466</a> (1931-10-01)
-# Decree <a href="http://pcdsh01.on.br/HV21896.htm">21,896</a> (1932-01-10)
-Rule Brazil 1931 only - Oct 3 11:00 1:00 S
-Rule Brazil 1932 1933 - Apr 1 0:00 0 -
-Rule Brazil 1932 only - Oct 3 0:00 1:00 S
-# Decree <a href="http://pcdsh01.on.br/HV23195.htm">23,195</a> (1933-10-10)
-# revoked DST.
-# Decree <a href="http://pcdsh01.on.br/HV27496.htm">27,496</a> (1949-11-24)
-# Decree <a href="http://pcdsh01.on.br/HV27998.htm">27,998</a> (1950-04-13)
-Rule Brazil 1949 1952 - Dec 1 0:00 1:00 S
-Rule Brazil 1950 only - Apr 16 1:00 0 -
-Rule Brazil 1951 1952 - Apr 1 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/HV32308.htm">32,308</a> (1953-02-24)
-Rule Brazil 1953 only - Mar 1 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/HV34724.htm">34,724</a> (1953-11-30)
-# revoked DST.
-# Decree <a href="http://pcdsh01.on.br/HV52700.htm">52,700</a> (1963-10-18)
-# established DST from 1963-10-23 00:00 to 1964-02-29 00:00
-# in SP, RJ, GB, MG, ES, due to the prolongation of the drought.
-# Decree <a href="http://pcdsh01.on.br/HV53071.htm">53,071</a> (1963-12-03)
-# extended the above decree to all of the national territory on 12-09.
-Rule Brazil 1963 only - Dec 9 0:00 1:00 S
-# Decree <a href="http://pcdsh01.on.br/HV53604.htm">53,604</a> (1964-02-25)
-# extended summer time by one day to 1964-03-01 00:00 (start of school).
-Rule Brazil 1964 only - Mar 1 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/HV55639.htm">55,639</a> (1965-01-27)
-Rule Brazil 1965 only - Jan 31 0:00 1:00 S
-Rule Brazil 1965 only - Mar 31 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/HV57303.htm">57,303</a> (1965-11-22)
-Rule Brazil 1965 only - Dec 1 0:00 1:00 S
-# Decree <a href="http://pcdsh01.on.br/HV57843.htm">57,843</a> (1966-02-18)
-Rule Brazil 1966 1968 - Mar 1 0:00 0 -
-Rule Brazil 1966 1967 - Nov 1 0:00 1:00 S
-# Decree <a href="http://pcdsh01.on.br/HV63429.htm">63,429</a> (1968-10-15)
-# revoked DST.
-# Decree <a href="http://pcdsh01.on.br/HV91698.htm">91,698</a> (1985-09-27)
-Rule Brazil 1985 only - Nov 2 0:00 1:00 S
-# Decree 92,310 (1986-01-21)
-# Decree 92,463 (1986-03-13)
-Rule Brazil 1986 only - Mar 15 0:00 0 -
-# Decree 93,316 (1986-10-01)
-Rule Brazil 1986 only - Oct 25 0:00 1:00 S
-Rule Brazil 1987 only - Feb 14 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/HV94922.htm">94,922</a> (1987-09-22)
-Rule Brazil 1987 only - Oct 25 0:00 1:00 S
-Rule Brazil 1988 only - Feb 7 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/HV96676.htm">96,676</a> (1988-09-12)
-# except for the states of AC, AM, PA, RR, RO, and AP (then a territory)
-Rule Brazil 1988 only - Oct 16 0:00 1:00 S
-Rule Brazil 1989 only - Jan 29 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/HV98077.htm">98,077</a> (1989-08-21)
-# with the same exceptions
-Rule Brazil 1989 only - Oct 15 0:00 1:00 S
-Rule Brazil 1990 only - Feb 11 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/HV99530.htm">99,530</a> (1990-09-17)
-# adopted by RS, SC, PR, SP, RJ, ES, MG, GO, MS, DF.
-# Decree 99,629 (1990-10-19) adds BA, MT.
-Rule Brazil 1990 only - Oct 21 0:00 1:00 S
-Rule Brazil 1991 only - Feb 17 0:00 0 -
-# <a href="http://pcdsh01.on.br/HV1991.htm">Unnumbered decree</a> (1991-09-25)
-# adopted by RS, SC, PR, SP, RJ, ES, MG, BA, GO, MT, MS, DF.
-Rule Brazil 1991 only - Oct 20 0:00 1:00 S
-Rule Brazil 1992 only - Feb 9 0:00 0 -
-# <a href="http://pcdsh01.on.br/HV1992.htm">Unnumbered decree</a> (1992-10-16)
-# adopted by same states.
-Rule Brazil 1992 only - Oct 25 0:00 1:00 S
-Rule Brazil 1993 only - Jan 31 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/HV942.htm">942</a> (1993-09-28)
-# adopted by same states, plus AM.
-# Decree <a href="http://pcdsh01.on.br/HV1252.htm">1,252</a> (1994-09-22;
-# web page corrected 2004-01-07) adopted by same states, minus AM.
-# Decree <a href="http://pcdsh01.on.br/HV1636.htm">1,636</a> (1995-09-14)
-# adopted by same states, plus MT and TO.
-# Decree <a href="http://pcdsh01.on.br/HV1674.htm">1,674</a> (1995-10-13)
-# adds AL, SE.
-Rule Brazil 1993 1995 - Oct Sun>=11 0:00 1:00 S
-Rule Brazil 1994 1995 - Feb Sun>=15 0:00 0 -
-Rule Brazil 1996 only - Feb 11 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/HV2000.htm">2,000</a> (1996-09-04)
-# adopted by same states, minus AL, SE.
-Rule Brazil 1996 only - Oct 6 0:00 1:00 S
-Rule Brazil 1997 only - Feb 16 0:00 0 -
-# From Daniel C. Sobral (1998-02-12):
-# In 1997, the DS began on October 6. The stated reason was that
-# because international television networks ignored Brazil's policy on DS,
-# they bought the wrong times on satellite for coverage of Pope's visit.
-# This year, the ending date of DS was postponed to March 1
-# to help dealing with the shortages of electric power.
-#
-# Decree 2,317 (1997-09-04), adopted by same states.
-Rule Brazil 1997 only - Oct 6 0:00 1:00 S
-# Decree <a href="http://pcdsh01.on.br/figuras/HV2495.JPG">2,495</a>
-# (1998-02-10)
-Rule Brazil 1998 only - Mar 1 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/figuras/Hv98.jpg">2,780</a> (1998-09-11)
-# adopted by the same states as before.
-Rule Brazil 1998 only - Oct 11 0:00 1:00 S
-Rule Brazil 1999 only - Feb 21 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/figuras/HV3150.gif">3,150</a>
-# (1999-08-23) adopted by same states.
-# Decree <a href="http://pcdsh01.on.br/DecHV99.gif">3,188</a> (1999-09-30)
-# adds SE, AL, PB, PE, RN, CE, PI, MA and RR.
-Rule Brazil 1999 only - Oct 3 0:00 1:00 S
-Rule Brazil 2000 only - Feb 27 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/DEC3592.htm">3,592</a> (2000-09-06)
-# adopted by the same states as before.
-# Decree <a href="http://pcdsh01.on.br/Dec3630.jpg">3,630</a> (2000-10-13)
-# repeals DST in PE and RR, effective 2000-10-15 00:00.
-# Decree <a href="http://pcdsh01.on.br/Dec3632.jpg">3,632</a> (2000-10-17)
-# repeals DST in SE, AL, PB, RN, CE, PI and MA, effective 2000-10-22 00:00.
-# Decree <a href="http://pcdsh01.on.br/figuras/HV3916.gif">3,916</a>
-# (2001-09-13) reestablishes DST in AL, CE, MA, PB, PE, PI, RN, SE.
-Rule Brazil 2000 2001 - Oct Sun>=8 0:00 1:00 S
-Rule Brazil 2001 2006 - Feb Sun>=15 0:00 0 -
-# Decree 4,399 (2002-10-01) repeals DST in AL, CE, MA, PB, PE, PI, RN, SE.
-# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2002/D4399.htm">4,399</a>
-Rule Brazil 2002 only - Nov 3 0:00 1:00 S
-# Decree 4,844 (2003-09-24; corrected 2003-09-26) repeals DST in BA, MT, TO.
-# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2003/D4844.htm">4,844</a>
-Rule Brazil 2003 only - Oct 19 0:00 1:00 S
-# Decree 5,223 (2004-10-01) reestablishes DST in MT.
-# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2004-2006/2004/Decreto/D5223.htm">5,223</a>
-Rule Brazil 2004 only - Nov 2 0:00 1:00 S
-# Decree <a href="http://pcdsh01.on.br/DecHV5539.gif">5,539</a> (2005-09-19),
-# adopted by the same states as before.
-Rule Brazil 2005 only - Oct 16 0:00 1:00 S
-# Decree <a href="http://pcdsh01.on.br/DecHV5920.gif">5,920</a> (2006-10-03),
-# adopted by the same states as before.
-Rule Brazil 2006 only - Nov 5 0:00 1:00 S
-Rule Brazil 2007 only - Feb 25 0:00 0 -
-# Decree <a href="http://pcdsh01.on.br/DecHV6212.gif">6,212</a> (2007-09-26),
-# adopted by the same states as before.
-Rule Brazil 2007 only - Oct Sun>=8 0:00 1:00 S
-# From Frederico A. C. Neves (2008-09-10):
-# Acording to this decree
-# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm">
-# http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm
-# </a>
-# [t]he DST period in Brazil now on will be from the 3rd Oct Sunday to the
-# 3rd Feb Sunday. There is an exception on the return date when this is
-# the Carnival Sunday then the return date will be the next Sunday...
-Rule Brazil 2008 max - Oct Sun>=15 0:00 1:00 S
-Rule Brazil 2008 2011 - Feb Sun>=15 0:00 0 -
-Rule Brazil 2012 only - Feb Sun>=22 0:00 0 -
-Rule Brazil 2013 2014 - Feb Sun>=15 0:00 0 -
-Rule Brazil 2015 only - Feb Sun>=22 0:00 0 -
-Rule Brazil 2016 2022 - Feb Sun>=15 0:00 0 -
-Rule Brazil 2023 only - Feb Sun>=22 0:00 0 -
-Rule Brazil 2024 2025 - Feb Sun>=15 0:00 0 -
-Rule Brazil 2026 only - Feb Sun>=22 0:00 0 -
-Rule Brazil 2027 2033 - Feb Sun>=15 0:00 0 -
-Rule Brazil 2034 only - Feb Sun>=22 0:00 0 -
-Rule Brazil 2035 2036 - Feb Sun>=15 0:00 0 -
-Rule Brazil 2037 only - Feb Sun>=22 0:00 0 -
-# From Arthur David Olson (2008-09-29):
-# The next is wrong in some years but is better than nothing.
-Rule Brazil 2038 max - Feb Sun>=15 0:00 0 -
-
-# The latest ruleset listed above says that the following states observe DST:
-# DF, ES, GO, MG, MS, MT, PR, RJ, RS, SC, SP.
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-#
-# Fernando de Noronha (administratively part of PE)
-Zone America/Noronha -2:09:40 - LMT 1914
- -2:00 Brazil FN%sT 1990 Sep 17
- -2:00 - FNT 1999 Sep 30
- -2:00 Brazil FN%sT 2000 Oct 15
- -2:00 - FNT 2001 Sep 13
- -2:00 Brazil FN%sT 2002 Oct 1
- -2:00 - FNT
-# Other Atlantic islands have no permanent settlement.
-# These include Trindade and Martin Vaz (administratively part of ES),
-# Atol das Rocas (RN), and Penedos de Sao Pedro e Sao Paulo (PE).
-# Fernando de Noronha was a separate territory from 1942-09-02 to 1989-01-01;
-# it also included the Penedos.
-#
-# Amapa (AP), east Para (PA)
-# East Para includes Belem, Maraba, Serra Norte, and Sao Felix do Xingu.
-# The division between east and west Para is the river Xingu.
-# In the north a very small part from the river Javary (now Jari I guess,
-# the border with Amapa) to the Amazon, then to the Xingu.
-Zone America/Belem -3:13:56 - LMT 1914
- -3:00 Brazil BR%sT 1988 Sep 12
- -3:00 - BRT
-#
-# west Para (PA)
-# West Para includes Altamira, Oribidos, Prainha, Oriximina, and Santarem.
-Zone America/Santarem -3:38:48 - LMT 1914
- -4:00 Brazil AM%sT 1988 Sep 12
- -4:00 - AMT 2008 Jun 24 00:00
- -3:00 - BRT
-#
-# Maranhao (MA), Piaui (PI), Ceara (CE), Rio Grande do Norte (RN),
-# Paraiba (PB)
-Zone America/Fortaleza -2:34:00 - LMT 1914
- -3:00 Brazil BR%sT 1990 Sep 17
- -3:00 - BRT 1999 Sep 30
- -3:00 Brazil BR%sT 2000 Oct 22
- -3:00 - BRT 2001 Sep 13
- -3:00 Brazil BR%sT 2002 Oct 1
- -3:00 - BRT
-#
-# Pernambuco (PE) (except Atlantic islands)
-Zone America/Recife -2:19:36 - LMT 1914
- -3:00 Brazil BR%sT 1990 Sep 17
- -3:00 - BRT 1999 Sep 30
- -3:00 Brazil BR%sT 2000 Oct 15
- -3:00 - BRT 2001 Sep 13
- -3:00 Brazil BR%sT 2002 Oct 1
- -3:00 - BRT
-#
-# Tocantins (TO)
-Zone America/Araguaina -3:12:48 - LMT 1914
- -3:00 Brazil BR%sT 1990 Sep 17
- -3:00 - BRT 1995 Sep 14
- -3:00 Brazil BR%sT 2003 Sep 24
- -3:00 - BRT
-#
-# Alagoas (AL), Sergipe (SE)
-Zone America/Maceio -2:22:52 - LMT 1914
- -3:00 Brazil BR%sT 1990 Sep 17
- -3:00 - BRT 1995 Oct 13
- -3:00 Brazil BR%sT 1996 Sep 4
- -3:00 - BRT 1999 Sep 30
- -3:00 Brazil BR%sT 2000 Oct 22
- -3:00 - BRT 2001 Sep 13
- -3:00 Brazil BR%sT 2002 Oct 1
- -3:00 - BRT
-#
-# Bahia (BA)
-# There are too many Salvadors elsewhere, so use America/Bahia instead
-# of America/Salvador.
-Zone America/Bahia -2:34:04 - LMT 1914
- -3:00 Brazil BR%sT 2003 Sep 24
- -3:00 - BRT
-#
-# Goias (GO), Distrito Federal (DF), Minas Gerais (MG),
-# Espirito Santo (ES), Rio de Janeiro (RJ), Sao Paulo (SP), Parana (PR),
-# Santa Catarina (SC), Rio Grande do Sul (RS)
-Zone America/Sao_Paulo -3:06:28 - LMT 1914
- -3:00 Brazil BR%sT 1963 Oct 23 00:00
- -3:00 1:00 BRST 1964
- -3:00 Brazil BR%sT
-#
-# Mato Grosso do Sul (MS)
-Zone America/Campo_Grande -3:38:28 - LMT 1914
- -4:00 Brazil AM%sT
-#
-# Mato Grosso (MT)
-Zone America/Cuiaba -3:44:20 - LMT 1914
- -4:00 Brazil AM%sT 2003 Sep 24
- -4:00 - AMT 2004 Oct 1
- -4:00 Brazil AM%sT
-#
-# Rondonia (RO)
-Zone America/Porto_Velho -4:15:36 - LMT 1914
- -4:00 Brazil AM%sT 1988 Sep 12
- -4:00 - AMT
-#
-# Roraima (RR)
-Zone America/Boa_Vista -4:02:40 - LMT 1914
- -4:00 Brazil AM%sT 1988 Sep 12
- -4:00 - AMT 1999 Sep 30
- -4:00 Brazil AM%sT 2000 Oct 15
- -4:00 - AMT
-#
-# east Amazonas (AM): Boca do Acre, Jutai, Manaus, Floriano Peixoto
-# The great circle line from Tabatinga to Porto Acre divides
-# east from west Amazonas.
-Zone America/Manaus -4:00:04 - LMT 1914
- -4:00 Brazil AM%sT 1988 Sep 12
- -4:00 - AMT 1993 Sep 28
- -4:00 Brazil AM%sT 1994 Sep 22
- -4:00 - AMT
-#
-# west Amazonas (AM): Atalaia do Norte, Boca do Maoco, Benjamin Constant,
-# Eirunepe, Envira, Ipixuna
-Zone America/Eirunepe -4:39:28 - LMT 1914
- -5:00 Brazil AC%sT 1988 Sep 12
- -5:00 - ACT 1993 Sep 28
- -5:00 Brazil AC%sT 1994 Sep 22
- -5:00 - ACT 2008 Jun 24 00:00
- -4:00 - AMT
-#
-# Acre (AC)
-Zone America/Rio_Branco -4:31:12 - LMT 1914
- -5:00 Brazil AC%sT 1988 Sep 12
- -5:00 - ACT 2008 Jun 24 00:00
- -4:00 - AMT
-
-# Chile
-
-# From Eduardo Krell (1995-10-19):
-# The law says to switch to DST at midnight [24:00] on the second SATURDAY
-# of October.... The law is the same for March and October.
-# (1998-09-29):
-# Because of the drought this year, the government decided to go into
-# DST earlier (saturday 9/26 at 24:00). This is a one-time change only ...
-# (unless there's another dry season next year, I guess).
-
-# From Julio I. Pacheco Troncoso (1999-03-18):
-# Because of the same drought, the government decided to end DST later,
-# on April 3, (one-time change).
-
-# From Oscar van Vlijmen (2006-10-08):
-# http://www.horaoficial.cl/cambio.htm
-
-# From Jesper Norgaard Welen (2006-10-08):
-# I think that there are some obvious mistakes in the suggested link
-# from Oscar van Vlijmen,... for instance entry 66 says that GMT-4
-# ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15
-# (they should have been 1990-09-15 and 1990-09-16 respectively), but
-# anyhow it clears up some doubts too.
-
-# From Paul Eggert (2006-12-27):
-# The following data for Chile and America/Santiago are from
-# <http://www.horaoficial.cl/horaof.htm> (2006-09-20), transcribed by
-# Jesper Norgaard Welen. The data for Pacific/Easter are from Shanks
-# & Pottenger, except with DST transitions after 1932 cloned from
-# America/Santiago. The pre-1980 Pacific/Easter data are dubious,
-# but we have no other source.
-
-# From German Poo-Caaman~o (2008-03-03):
-# Due to drought, Chile extends Daylight Time in three weeks. This
-# is one-time change (Saturday 3/29 at 24:00 for America/Santiago
-# and Saturday 3/29 at 22:00 for Pacific/Easter)
-# The Supreme Decree is located at
-# <a href="http://www.shoa.cl/servicios/supremo316.pdf">
-# http://www.shoa.cl/servicios/supremo316.pdf
-# </a>
-# and the instructions for 2008 are located in:
-# <a href="http://www.horaoficial.cl/cambio.htm">
-# http://www.horaoficial.cl/cambio.htm
-# </a>.
-
-# From Jose Miguel Garrido (2008-03-05):
-# ...
-# You could see the announces of the change on
-# <a href="http://www.shoa.cl/noticias/2008/04hora/hora.htm">
-# http://www.shoa.cl/noticias/2008/04hora/hora.htm
-# </a>.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Chile 1927 1932 - Sep 1 0:00 1:00 S
-Rule Chile 1928 1932 - Apr 1 0:00 0 -
-Rule Chile 1942 only - Jun 1 4:00u 0 -
-Rule Chile 1942 only - Aug 1 5:00u 1:00 S
-Rule Chile 1946 only - Jul 15 4:00u 1:00 S
-Rule Chile 1946 only - Sep 1 3:00u 0:00 -
-Rule Chile 1947 only - Apr 1 4:00u 0 -
-Rule Chile 1968 only - Nov 3 4:00u 1:00 S
-Rule Chile 1969 only - Mar 30 3:00u 0 -
-Rule Chile 1969 only - Nov 23 4:00u 1:00 S
-Rule Chile 1970 only - Mar 29 3:00u 0 -
-Rule Chile 1971 only - Mar 14 3:00u 0 -
-Rule Chile 1970 1972 - Oct Sun>=9 4:00u 1:00 S
-Rule Chile 1972 1986 - Mar Sun>=9 3:00u 0 -
-Rule Chile 1973 only - Sep 30 4:00u 1:00 S
-Rule Chile 1974 1987 - Oct Sun>=9 4:00u 1:00 S
-Rule Chile 1987 only - Apr 12 3:00u 0 -
-Rule Chile 1988 1989 - Mar Sun>=9 3:00u 0 -
-Rule Chile 1988 only - Oct Sun>=1 4:00u 1:00 S
-Rule Chile 1989 only - Oct Sun>=9 4:00u 1:00 S
-Rule Chile 1990 only - Mar 18 3:00u 0 -
-Rule Chile 1990 only - Sep 16 4:00u 1:00 S
-Rule Chile 1991 1996 - Mar Sun>=9 3:00u 0 -
-Rule Chile 1991 1997 - Oct Sun>=9 4:00u 1:00 S
-Rule Chile 1997 only - Mar 30 3:00u 0 -
-Rule Chile 1998 only - Mar Sun>=9 3:00u 0 -
-Rule Chile 1998 only - Sep 27 4:00u 1:00 S
-Rule Chile 1999 only - Apr 4 3:00u 0 -
-Rule Chile 1999 max - Oct Sun>=9 4:00u 1:00 S
-Rule Chile 2000 2007 - Mar Sun>=9 3:00u 0 -
-# N.B.: the end of March 29 in Chile is March 30 in Universal time,
-# which is used below in specifying the transition.
-Rule Chile 2008 only - Mar 30 3:00u 0 -
-Rule Chile 2009 max - Mar Sun>=9 3:00u 0 -
-# IATA SSIM anomalies: (1992-02) says 1992-03-14;
-# (1996-09) says 1998-03-08. Ignore these.
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Santiago -4:42:46 - LMT 1890
- -4:42:46 - SMT 1910 # Santiago Mean Time
- -5:00 - CLT 1916 Jul 1 # Chile Time
- -4:42:46 - SMT 1918 Sep 1 # Santiago Mean Time
- -4:00 - CLT 1919 Jul 1 # Chile Time
- -4:42:46 - SMT 1927 Sep 1 # Santiago Mean Time
- -5:00 Chile CL%sT 1947 May 22 # Chile Time
- -4:00 Chile CL%sT
-Zone Pacific/Easter -7:17:44 - LMT 1890
- -7:17:28 - EMT 1932 Sep # Easter Mean Time
- -7:00 Chile EAS%sT 1982 Mar 13 21:00 # Easter I Time
- -6:00 Chile EAS%sT
-#
-# Sala y Gomez Island is like Pacific/Easter.
-# Other Chilean locations, including Juan Fernandez Is, San Ambrosio,
-# San Felix, and Antarctic bases, are like America/Santiago.
-
-# Colombia
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule CO 1992 only - May 3 0:00 1:00 S
-Rule CO 1993 only - Apr 4 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Bogota -4:56:20 - LMT 1884 Mar 13
- -4:56:20 - BMT 1914 Nov 23 # Bogota Mean Time
- -5:00 CO CO%sT # Colombia Time
-# Malpelo, Providencia, San Andres
-# no information; probably like America/Bogota
-
-# Curacao
-#
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say that The Bottom and Philipsburg have been at
-# -4:00 since standard time was introduced on 1912-03-02; and that
-# Kralendijk and Rincon used Kralendijk Mean Time (-4:33:08) from
-# 1912-02-02 to 1965-01-01. The former is dubious, since S&P also say
-# Saba Island has been like Curacao.
-# This all predates our 1970 cutoff, though.
-#
-# By July 2007 Curacao and St Maarten are planned to become
-# associated states within the Netherlands, much like Aruba;
-# Bonaire, Saba and St Eustatius would become directly part of the
-# Netherlands as Kingdom Islands. This won't affect their time zones
-# though, as far as we know.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Curacao -4:35:44 - LMT 1912 Feb 12 # Willemstad
- -4:30 - ANT 1965 # Netherlands Antilles Time
- -4:00 - AST
-
-# Ecuador
-#
-# From Paul Eggert (2007-03-04):
-# Apparently Ecuador had a failed experiment with DST in 1992.
-# <http://midena.gov.ec/content/view/1261/208/> (2007-02-27) and
-# <http://www.hoy.com.ec/NoticiaNue.asp?row_id=249856> (2006-11-06) both
-# talk about "hora Sixto". Leave this alone for now, as we have no data.
-#
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Guayaquil -5:19:20 - LMT 1890
- -5:14:00 - QMT 1931 # Quito Mean Time
- -5:00 - ECT # Ecuador Time
-Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno
- -5:00 - ECT 1986
- -6:00 - GALT # Galapagos Time
-
-# Falklands
-
-# From Paul Eggert (2006-03-22):
-# Between 1990 and 2000 inclusive, Shanks & Pottenger and the IATA agree except
-# the IATA gives 1996-09-08. Go with Shanks & Pottenger.
-
-# From Falkland Islands Government Office, London (2001-01-22)
-# via Jesper Norgaard:
-# ... the clocks revert back to Local Mean Time at 2 am on Sunday 15
-# April 2001 and advance one hour to summer time at 2 am on Sunday 2
-# September. It is anticipated that the clocks will revert back at 2
-# am on Sunday 21 April 2002 and advance to summer time at 2 am on
-# Sunday 1 September.
-
-# From Rives McDow (2001-02-13):
-#
-# I have communicated several times with people there, and the last
-# time I had communications that was helpful was in 1998. Here is
-# what was said then:
-#
-# "The general rule was that Stanley used daylight saving and the Camp
-# did not. However for various reasons many people in the Camp have
-# started to use daylight saving (known locally as 'Stanley Time')
-# There is no rule as to who uses daylight saving - it is a matter of
-# personal choice and so it is impossible to draw a map showing who
-# uses it and who does not. Any list would be out of date as soon as
-# it was produced. This year daylight saving ended on April 18/19th
-# and started again on September 12/13th. I do not know what the rule
-# is, but can find out if you like. We do not change at the same time
-# as UK or Chile."
-#
-# I did have in my notes that the rule was "Second Saturday in Sep at
-# 0:00 until third Saturday in Apr at 0:00". I think that this does
-# not agree in some cases with Shanks; is this true?
-#
-# Also, there is no mention in the list that some areas in the
-# Falklands do not use DST. I have found in my communications there
-# that these areas are on the western half of East Falkland and all of
-# West Falkland. Stanley is the only place that consistently observes
-# DST. Again, as in other places in the world, the farmers don't like
-# it. West Falkland is almost entirely sheep farmers.
-#
-# I know one lady there that keeps a list of which farm keeps DST and
-# which doesn't each year. She runs a shop in Stanley, and says that
-# the list changes each year. She uses it to communicate to her
-# customers, catching them when they are home for lunch or dinner.
-
-# From Paul Eggert (2001-03-05):
-# For now, we'll just record the time in Stanley, since we have no
-# better info.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Falk 1937 1938 - Sep lastSun 0:00 1:00 S
-Rule Falk 1938 1942 - Mar Sun>=19 0:00 0 -
-Rule Falk 1939 only - Oct 1 0:00 1:00 S
-Rule Falk 1940 1942 - Sep lastSun 0:00 1:00 S
-Rule Falk 1943 only - Jan 1 0:00 0 -
-Rule Falk 1983 only - Sep lastSun 0:00 1:00 S
-Rule Falk 1984 1985 - Apr lastSun 0:00 0 -
-Rule Falk 1984 only - Sep 16 0:00 1:00 S
-Rule Falk 1985 2000 - Sep Sun>=9 0:00 1:00 S
-Rule Falk 1986 2000 - Apr Sun>=16 0:00 0 -
-Rule Falk 2001 max - Apr Sun>=15 2:00 0 -
-Rule Falk 2001 max - Sep Sun>=1 2:00 1:00 S
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Atlantic/Stanley -3:51:24 - LMT 1890
- -3:51:24 - SMT 1912 Mar 12 # Stanley Mean Time
- -4:00 Falk FK%sT 1983 May # Falkland Is Time
- -3:00 Falk FK%sT 1985 Sep 15
- -4:00 Falk FK%sT
-
-# French Guiana
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Cayenne -3:29:20 - LMT 1911 Jul
- -4:00 - GFT 1967 Oct # French Guiana Time
- -3:00 - GFT
-
-# Guyana
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown
- -3:45 - GBGT 1966 May 26 # Br Guiana Time
- -3:45 - GYT 1975 Jul 31 # Guyana Time
- -3:00 - GYT 1991
-# IATA SSIM (1996-06) says -4:00. Assume a 1991 switch.
- -4:00 - GYT
-
-# Paraguay
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say that spring transitions are from 01:00 -> 02:00,
-# and autumn transitions are from 00:00 -> 23:00. Go with pre-1999
-# editions of Shanks, and with the IATA, who say transitions occur at 00:00.
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Para 1975 1988 - Oct 1 0:00 1:00 S
-Rule Para 1975 1978 - Mar 1 0:00 0 -
-Rule Para 1979 1991 - Apr 1 0:00 0 -
-Rule Para 1989 only - Oct 22 0:00 1:00 S
-Rule Para 1990 only - Oct 1 0:00 1:00 S
-Rule Para 1991 only - Oct 6 0:00 1:00 S
-Rule Para 1992 only - Mar 1 0:00 0 -
-Rule Para 1992 only - Oct 5 0:00 1:00 S
-Rule Para 1993 only - Mar 31 0:00 0 -
-Rule Para 1993 1995 - Oct 1 0:00 1:00 S
-Rule Para 1994 1995 - Feb lastSun 0:00 0 -
-Rule Para 1996 only - Mar 1 0:00 0 -
-# IATA SSIM (2000-02) says 1999-10-10; ignore this for now.
-# From Steffen Thorsen (2000-10-02):
-# I have three independent reports that Paraguay changed to DST this Sunday
-# (10-01).
-#
-# Translated by Gwillim Law (2001-02-27) from
-# <a href="http://www.diarionoticias.com.py/011000/nacional/naciona1.htm">
-# Noticias, a daily paper in Asuncion, Paraguay (2000-10-01)
-# </a>:
-# Starting at 0:00 today, the clock will be set forward 60 minutes, in
-# fulfillment of Decree No. 7,273 of the Executive Power.... The time change
-# system has been operating for several years. Formerly there was a separate
-# decree each year; the new law has the same effect, but permanently. Every
-# year, the time will change on the first Sunday of October; likewise, the
-# clock will be set back on the first Sunday of March.
-#
-Rule Para 1996 2001 - Oct Sun>=1 0:00 1:00 S
-# IATA SSIM (1997-09) says Mar 1; go with Shanks & Pottenger.
-Rule Para 1997 only - Feb lastSun 0:00 0 -
-# Shanks & Pottenger say 1999-02-28; IATA SSIM (1999-02) says 1999-02-27, but
-# (1999-09) reports no date; go with above sources and Gerd Knops (2001-02-27).
-Rule Para 1998 2001 - Mar Sun>=1 0:00 0 -
-# From Rives McDow (2002-02-28):
-# A decree was issued in Paraguay (no. 16350) on 2002-02-26 that changed the
-# dst method to be from the first Sunday in September to the first Sunday in
-# April.
-Rule Para 2002 2004 - Apr Sun>=1 0:00 0 -
-Rule Para 2002 2003 - Sep Sun>=1 0:00 1:00 S
-#
-# From Jesper Norgaard Welen (2005-01-02):
-# There are several sources that claim that Paraguay made
-# a timezone rule change in autumn 2004.
-# From Steffen Thorsen (2005-01-05):
-# Decree 1,867 (2004-03-05)
-# From Carlos Raul Perasso via Jesper Norgaard Welen (2006-10-13)
-# <http://www.presidencia.gov.py/decretos/D1867.pdf>
-Rule Para 2004 max - Oct Sun>=15 0:00 1:00 S
-Rule Para 2005 max - Mar Sun>=8 0:00 0 -
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Asuncion -3:50:40 - LMT 1890
- -3:50:40 - AMT 1931 Oct 10 # Asuncion Mean Time
- -4:00 - PYT 1972 Oct # Paraguay Time
- -3:00 - PYT 1974 Apr
- -4:00 Para PY%sT
-
-# Peru
-#
-# <a href="news:xrGmb.39935$gA1.13896113@news4.srv.hcvlny.cv.net">
-# From Evelyn C. Leeper via Mark Brader (2003-10-26):</a>
-# When we were in Peru in 1985-1986, they apparently switched over
-# sometime between December 29 and January 3 while we were on the Amazon.
-#
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger don't have this transition. Assume 1986 was like 1987.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Peru 1938 only - Jan 1 0:00 1:00 S
-Rule Peru 1938 only - Apr 1 0:00 0 -
-Rule Peru 1938 1939 - Sep lastSun 0:00 1:00 S
-Rule Peru 1939 1940 - Mar Sun>=24 0:00 0 -
-Rule Peru 1986 1987 - Jan 1 0:00 1:00 S
-Rule Peru 1986 1987 - Apr 1 0:00 0 -
-Rule Peru 1990 only - Jan 1 0:00 1:00 S
-Rule Peru 1990 only - Apr 1 0:00 0 -
-# IATA is ambiguous for 1993/1995; go with Shanks & Pottenger.
-Rule Peru 1994 only - Jan 1 0:00 1:00 S
-Rule Peru 1994 only - Apr 1 0:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Lima -5:08:12 - LMT 1890
- -5:08:36 - LMT 1908 Jul 28 # Lima Mean Time?
- -5:00 Peru PE%sT # Peru Time
-
-# South Georgia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken
- -2:00 - GST # South Georgia Time
-
-# South Sandwich Is
-# uninhabited; scientific personnel have wintered
-
-# Suriname
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Paramaribo -3:40:40 - LMT 1911
- -3:40:52 - PMT 1935 # Paramaribo Mean Time
- -3:40:36 - PMT 1945 Oct # The capital moved?
- -3:30 - NEGT 1975 Nov 20 # Dutch Guiana Time
- -3:30 - SRT 1984 Oct # Suriname Time
- -3:00 - SRT
-
-# Trinidad and Tobago
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Port_of_Spain -4:06:04 - LMT 1912 Mar 2
- -4:00 - AST
-
-# Uruguay
-# From Paul Eggert (1993-11-18):
-# Uruguay wins the prize for the strangest peacetime manipulation of the rules.
-# From Shanks & Pottenger:
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# Whitman gives 1923 Oct 1; go with Shanks & Pottenger.
-Rule Uruguay 1923 only - Oct 2 0:00 0:30 HS
-Rule Uruguay 1924 1926 - Apr 1 0:00 0 -
-Rule Uruguay 1924 1925 - Oct 1 0:00 0:30 HS
-Rule Uruguay 1933 1935 - Oct lastSun 0:00 0:30 HS
-# Shanks & Pottenger give 1935 Apr 1 0:00 & 1936 Mar 30 0:00; go with Whitman.
-Rule Uruguay 1934 1936 - Mar Sat>=25 23:30s 0 -
-Rule Uruguay 1936 only - Nov 1 0:00 0:30 HS
-Rule Uruguay 1937 1941 - Mar lastSun 0:00 0 -
-# Whitman gives 1937 Oct 3; go with Shanks & Pottenger.
-Rule Uruguay 1937 1940 - Oct lastSun 0:00 0:30 HS
-# Whitman gives 1941 Oct 24 - 1942 Mar 27, 1942 Dec 14 - 1943 Apr 13,
-# and 1943 Apr 13 ``to present time''; go with Shanks & Pottenger.
-Rule Uruguay 1941 only - Aug 1 0:00 0:30 HS
-Rule Uruguay 1942 only - Jan 1 0:00 0 -
-Rule Uruguay 1942 only - Dec 14 0:00 1:00 S
-Rule Uruguay 1943 only - Mar 14 0:00 0 -
-Rule Uruguay 1959 only - May 24 0:00 1:00 S
-Rule Uruguay 1959 only - Nov 15 0:00 0 -
-Rule Uruguay 1960 only - Jan 17 0:00 1:00 S
-Rule Uruguay 1960 only - Mar 6 0:00 0 -
-Rule Uruguay 1965 1967 - Apr Sun>=1 0:00 1:00 S
-Rule Uruguay 1965 only - Sep 26 0:00 0 -
-Rule Uruguay 1966 1967 - Oct 31 0:00 0 -
-Rule Uruguay 1968 1970 - May 27 0:00 0:30 HS
-Rule Uruguay 1968 1970 - Dec 2 0:00 0 -
-Rule Uruguay 1972 only - Apr 24 0:00 1:00 S
-Rule Uruguay 1972 only - Aug 15 0:00 0 -
-Rule Uruguay 1974 only - Mar 10 0:00 0:30 HS
-Rule Uruguay 1974 only - Dec 22 0:00 1:00 S
-Rule Uruguay 1976 only - Oct 1 0:00 0 -
-Rule Uruguay 1977 only - Dec 4 0:00 1:00 S
-Rule Uruguay 1978 only - Apr 1 0:00 0 -
-Rule Uruguay 1979 only - Oct 1 0:00 1:00 S
-Rule Uruguay 1980 only - May 1 0:00 0 -
-Rule Uruguay 1987 only - Dec 14 0:00 1:00 S
-Rule Uruguay 1988 only - Mar 14 0:00 0 -
-Rule Uruguay 1988 only - Dec 11 0:00 1:00 S
-Rule Uruguay 1989 only - Mar 12 0:00 0 -
-Rule Uruguay 1989 only - Oct 29 0:00 1:00 S
-# Shanks & Pottenger say no DST was observed in 1990/1 and 1991/2,
-# and that 1992/3's DST was from 10-25 to 03-01. Go with IATA.
-Rule Uruguay 1990 1992 - Mar Sun>=1 0:00 0 -
-Rule Uruguay 1990 1991 - Oct Sun>=21 0:00 1:00 S
-Rule Uruguay 1992 only - Oct 18 0:00 1:00 S
-Rule Uruguay 1993 only - Feb 28 0:00 0 -
-# From Eduardo Cota (2004-09-20):
-# The uruguayan government has decreed a change in the local time....
-# http://www.presidencia.gub.uy/decretos/2004091502.htm
-Rule Uruguay 2004 only - Sep 19 0:00 1:00 S
-# From Steffen Thorsen (2005-03-11):
-# Uruguay's DST was scheduled to end on Sunday, 2005-03-13, but in order to
-# save energy ... it was postponed two weeks....
-# http://www.presidencia.gub.uy/_Web/noticias/2005/03/2005031005.htm
-Rule Uruguay 2005 only - Mar 27 2:00 0 -
-# From Eduardo Cota (2005-09-27):
-# http://www.presidencia.gub.uy/_Web/decretos/2005/09/CM%20119_09%2009%202005_00001.PDF
-# This means that from 2005-10-09 at 02:00 local time, until 2006-03-12 at
-# 02:00 local time, official time in Uruguay will be at GMT -2.
-Rule Uruguay 2005 only - Oct 9 2:00 1:00 S
-Rule Uruguay 2006 only - Mar 12 2:00 0 -
-# From Jesper Norgaard Welen (2006-09-06):
-# http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF
-Rule Uruguay 2006 max - Oct Sun>=1 2:00 1:00 S
-Rule Uruguay 2007 max - Mar Sun>=8 2:00 0 -
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Montevideo -3:44:44 - LMT 1898 Jun 28
- -3:44:44 - MMT 1920 May 1 # Montevideo MT
- -3:30 Uruguay UY%sT 1942 Dec 14 # Uruguay Time
- -3:00 Uruguay UY%sT
-
-# Venezuela
-#
-# From John Stainforth (2007-11-28):
-# ... the change for Venezuela originally expected for 2007-12-31 has
-# been brought forward to 2007-12-09. The official announcement was
-# published today in the "Gaceta Oficial de la Republica Bolivariana
-# de Venezuela, numero 38.819" (official document for all laws or
-# resolution publication)
-# http://www.globovision.com/news.php?nid=72208
-
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone America/Caracas -4:27:44 - LMT 1890
- -4:27:40 - CMT 1912 Feb 12 # Caracas Mean Time?
- -4:30 - VET 1965 # Venezuela Time
- -4:00 - VET 2007 Dec 9 03:00
- -4:30 - VET
diff --git a/tools/zoneinfo/tzdata2008h/systemv b/tools/zoneinfo/tzdata2008h/systemv
deleted file mode 100644
index 6cf9645..0000000
--- a/tools/zoneinfo/tzdata2008h/systemv
+++ /dev/null
@@ -1,36 +0,0 @@
-# @(#)systemv 8.1
-
-# Old rules, should the need arise.
-# No attempt is made to handle Newfoundland, since it cannot be expressed
-# using the System V "TZ" scheme (half-hour offset), or anything outside
-# North America (no support for non-standard DST start/end dates), nor
-# the changes in the DST rules in the US after 1976 (which occurred after
-# the old rules were written).
-#
-# If you need the old rules, uncomment ## lines.
-# Compile this *without* leap second correction for true conformance.
-
-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule SystemV min 1973 - Apr lastSun 2:00 1:00 D
-Rule SystemV min 1973 - Oct lastSun 2:00 0 S
-Rule SystemV 1974 only - Jan 6 2:00 1:00 D
-Rule SystemV 1974 only - Nov lastSun 2:00 0 S
-Rule SystemV 1975 only - Feb 23 2:00 1:00 D
-Rule SystemV 1975 only - Oct lastSun 2:00 0 S
-Rule SystemV 1976 max - Apr lastSun 2:00 1:00 D
-Rule SystemV 1976 max - Oct lastSun 2:00 0 S
-
-# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
-## Zone SystemV/AST4ADT -4:00 SystemV A%sT
-## Zone SystemV/EST5EDT -5:00 SystemV E%sT
-## Zone SystemV/CST6CDT -6:00 SystemV C%sT
-## Zone SystemV/MST7MDT -7:00 SystemV M%sT
-## Zone SystemV/PST8PDT -8:00 SystemV P%sT
-## Zone SystemV/YST9YDT -9:00 SystemV Y%sT
-## Zone SystemV/AST4 -4:00 - AST
-## Zone SystemV/EST5 -5:00 - EST
-## Zone SystemV/CST6 -6:00 - CST
-## Zone SystemV/MST7 -7:00 - MST
-## Zone SystemV/PST8 -8:00 - PST
-## Zone SystemV/YST9 -9:00 - YST
-## Zone SystemV/HST10 -10:00 - HST
diff --git a/tools/zoneinfo/tzdata2008h/zone.tab b/tools/zoneinfo/tzdata2008h/zone.tab
deleted file mode 100644
index ca9c76b..0000000
--- a/tools/zoneinfo/tzdata2008h/zone.tab
+++ /dev/null
@@ -1,424 +0,0 @@
-# @(#)zone.tab 8.19
-#
-# TZ zone descriptions
-#
-# From Paul Eggert (1996-08-05):
-#
-# This file contains a table with the following columns:
-# 1. ISO 3166 2-character country code. See the file `iso3166.tab'.
-# 2. Latitude and longitude of the zone's principal location
-# in ISO 6709 sign-degrees-minutes-seconds format,
-# either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS,
-# first latitude (+ is north), then longitude (+ is east).
-# 3. Zone name used in value of TZ environment variable.
-# 4. Comments; present if and only if the country has multiple rows.
-#
-# Columns are separated by a single tab.
-# The table is sorted first by country, then an order within the country that
-# (1) makes some geographical sense, and
-# (2) puts the most populous zones first, where that does not contradict (1).
-#
-# Lines beginning with `#' are comments.
-#
-#country-
-#code coordinates TZ comments
-AD +4230+00131 Europe/Andorra
-AE +2518+05518 Asia/Dubai
-AF +3431+06912 Asia/Kabul
-AG +1703-06148 America/Antigua
-AI +1812-06304 America/Anguilla
-AL +4120+01950 Europe/Tirane
-AM +4011+04430 Asia/Yerevan
-AN +1211-06900 America/Curacao
-AO -0848+01314 Africa/Luanda
-AQ -7750+16636 Antarctica/McMurdo McMurdo Station, Ross Island
-AQ -9000+00000 Antarctica/South_Pole Amundsen-Scott Station, South Pole
-AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
-AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
-AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
-AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
-AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
-AQ -7824+10654 Antarctica/Vostok Vostok Station, S Magnetic Pole
-AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Terre Adelie
-AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
-AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
-AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, LP, MN, NQ, RN, SA, SE, SF)
-AR -3319-06621 America/Argentina/San_Luis San Luis (SL)
-AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
-AR -2649-06513 America/Argentina/Tucuman Tucuman (TM)
-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
-AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
-AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
-AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
-AR -5138-06913 America/Argentina/Rio_Gallegos Santa Cruz (SC)
-AR -5448-06818 America/Argentina/Ushuaia Tierra del Fuego (TF)
-AS -1416-17042 Pacific/Pago_Pago
-AT +4813+01620 Europe/Vienna
-AU -3133+15905 Australia/Lord_Howe Lord Howe Island
-AU -4253+14719 Australia/Hobart Tasmania - most locations
-AU -3956+14352 Australia/Currie Tasmania - King Island
-AU -3749+14458 Australia/Melbourne Victoria
-AU -3352+15113 Australia/Sydney New South Wales - most locations
-AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
-AU -2728+15302 Australia/Brisbane Queensland - most locations
-AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
-AU -3455+13835 Australia/Adelaide South Australia
-AU -1228+13050 Australia/Darwin Northern Territory
-AU -3157+11551 Australia/Perth Western Australia - most locations
-AU -3143+12852 Australia/Eucla Western Australia - Eucla area
-AW +1230-06958 America/Aruba
-AX +6006+01957 Europe/Mariehamn
-AZ +4023+04951 Asia/Baku
-BA +4352+01825 Europe/Sarajevo
-BB +1306-05937 America/Barbados
-BD +2343+09025 Asia/Dhaka
-BE +5050+00420 Europe/Brussels
-BF +1222-00131 Africa/Ouagadougou
-BG +4241+02319 Europe/Sofia
-BH +2623+05035 Asia/Bahrain
-BI -0323+02922 Africa/Bujumbura
-BJ +0629+00237 Africa/Porto-Novo
-BL +1753-06251 America/St_Barthelemy
-BM +3217-06446 Atlantic/Bermuda
-BN +0456+11455 Asia/Brunei
-BO -1630-06809 America/La_Paz
-BR -0351-03225 America/Noronha Atlantic islands
-BR -0127-04829 America/Belem Amapa, E Para
-BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
-BR -0803-03454 America/Recife Pernambuco
-BR -0712-04812 America/Araguaina Tocantins
-BR -0940-03543 America/Maceio Alagoas, Sergipe
-BR -1259-03831 America/Bahia Bahia
-BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
-BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
-BR -1535-05605 America/Cuiaba Mato Grosso
-BR -0226-05452 America/Santarem W Para
-BR -0846-06354 America/Porto_Velho Rondonia
-BR +0249-06040 America/Boa_Vista Roraima
-BR -0308-06001 America/Manaus E Amazonas
-BR -0640-06952 America/Eirunepe W Amazonas
-BR -0958-06748 America/Rio_Branco Acre
-BS +2505-07721 America/Nassau
-BT +2728+08939 Asia/Thimphu
-BW -2545+02555 Africa/Gaborone
-BY +5354+02734 Europe/Minsk
-BZ +1730-08812 America/Belize
-CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (most places), PEI
-CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
-CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
-CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
-CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
-CA +4531-07334 America/Montreal Eastern Time - Quebec - most locations
-CA +4339-07923 America/Toronto Eastern Time - Ontario - most locations
-CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
-CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
-CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
-CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
-CA +744144-0944945 America/Resolute Eastern Time - Resolute, Nunavut
-CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
-CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
-CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
-CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
-CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
-CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
-CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
-CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
-CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
-CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
-CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
-CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
-CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
-CA +6404-13925 America/Dawson Pacific Time - north Yukon
-CC -1210+09655 Indian/Cocos
-CD -0418+01518 Africa/Kinshasa west Dem. Rep. of Congo
-CD -1140+02728 Africa/Lubumbashi east Dem. Rep. of Congo
-CF +0422+01835 Africa/Bangui
-CG -0416+01517 Africa/Brazzaville
-CH +4723+00832 Europe/Zurich
-CI +0519-00402 Africa/Abidjan
-CK -2114-15946 Pacific/Rarotonga
-CL -3327-07040 America/Santiago most locations
-CL -2709-10926 Pacific/Easter Easter Island & Sala y Gomez
-CM +0403+00942 Africa/Douala
-CN +3114+12128 Asia/Shanghai east China - Beijing, Guangdong, Shanghai, etc.
-CN +4545+12641 Asia/Harbin Heilongjiang (except Mohe), Jilin
-CN +2934+10635 Asia/Chongqing central China - Sichuan, Yunnan, Guangxi, Shaanxi, Guizhou, etc.
-CN +4348+08735 Asia/Urumqi most of Tibet & Xinjiang
-CN +3929+07559 Asia/Kashgar west Tibet & Xinjiang
-CO +0436-07405 America/Bogota
-CR +0956-08405 America/Costa_Rica
-CU +2308-08222 America/Havana
-CV +1455-02331 Atlantic/Cape_Verde
-CX -1025+10543 Indian/Christmas
-CY +3510+03322 Asia/Nicosia
-CZ +5005+01426 Europe/Prague
-DE +5230+01322 Europe/Berlin
-DJ +1136+04309 Africa/Djibouti
-DK +5540+01235 Europe/Copenhagen
-DM +1518-06124 America/Dominica
-DO +1828-06954 America/Santo_Domingo
-DZ +3647+00303 Africa/Algiers
-EC -0210-07950 America/Guayaquil mainland
-EC -0054-08936 Pacific/Galapagos Galapagos Islands
-EE +5925+02445 Europe/Tallinn
-EG +3003+03115 Africa/Cairo
-EH +2709-01312 Africa/El_Aaiun
-ER +1520+03853 Africa/Asmara
-ES +4024-00341 Europe/Madrid mainland
-ES +3553-00519 Africa/Ceuta Ceuta & Melilla
-ES +2806-01524 Atlantic/Canary Canary Islands
-ET +0902+03842 Africa/Addis_Ababa
-FI +6010+02458 Europe/Helsinki
-FJ -1808+17825 Pacific/Fiji
-FK -5142-05751 Atlantic/Stanley
-FM +0725+15147 Pacific/Truk Truk (Chuuk) and Yap
-FM +0658+15813 Pacific/Ponape Ponape (Pohnpei)
-FM +0519+16259 Pacific/Kosrae Kosrae
-FO +6201-00646 Atlantic/Faroe
-FR +4852+00220 Europe/Paris
-GA +0023+00927 Africa/Libreville
-GB +513030-0000731 Europe/London
-GD +1203-06145 America/Grenada
-GE +4143+04449 Asia/Tbilisi
-GF +0456-05220 America/Cayenne
-GG +4927-00232 Europe/Guernsey
-GH +0533-00013 Africa/Accra
-GI +3608-00521 Europe/Gibraltar
-GL +6411-05144 America/Godthab most locations
-GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
-GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
-GL +7634-06847 America/Thule Thule / Pituffik
-GM +1328-01639 Africa/Banjul
-GN +0931-01343 Africa/Conakry
-GP +1614-06132 America/Guadeloupe
-GQ +0345+00847 Africa/Malabo
-GR +3758+02343 Europe/Athens
-GS -5416-03632 Atlantic/South_Georgia
-GT +1438-09031 America/Guatemala
-GU +1328+14445 Pacific/Guam
-GW +1151-01535 Africa/Bissau
-GY +0648-05810 America/Guyana
-HK +2217+11409 Asia/Hong_Kong
-HN +1406-08713 America/Tegucigalpa
-HR +4548+01558 Europe/Zagreb
-HT +1832-07220 America/Port-au-Prince
-HU +4730+01905 Europe/Budapest
-ID -0610+10648 Asia/Jakarta Java & Sumatra
-ID -0002+10920 Asia/Pontianak west & central Borneo
-ID -0507+11924 Asia/Makassar east & south Borneo, Celebes, Bali, Nusa Tengarra, west Timor
-ID -0232+14042 Asia/Jayapura Irian Jaya & the Moluccas
-IE +5320-00615 Europe/Dublin
-IL +3146+03514 Asia/Jerusalem
-IM +5409-00428 Europe/Isle_of_Man
-IN +2232+08822 Asia/Kolkata
-IO -0720+07225 Indian/Chagos
-IQ +3321+04425 Asia/Baghdad
-IR +3540+05126 Asia/Tehran
-IS +6409-02151 Atlantic/Reykjavik
-IT +4154+01229 Europe/Rome
-JE +4912-00207 Europe/Jersey
-JM +1800-07648 America/Jamaica
-JO +3157+03556 Asia/Amman
-JP +353916+1394441 Asia/Tokyo
-KE -0117+03649 Africa/Nairobi
-KG +4254+07436 Asia/Bishkek
-KH +1133+10455 Asia/Phnom_Penh
-KI +0125+17300 Pacific/Tarawa Gilbert Islands
-KI -0308-17105 Pacific/Enderbury Phoenix Islands
-KI +0152-15720 Pacific/Kiritimati Line Islands
-KM -1141+04316 Indian/Comoro
-KN +1718-06243 America/St_Kitts
-KP +3901+12545 Asia/Pyongyang
-KR +3733+12658 Asia/Seoul
-KW +2920+04759 Asia/Kuwait
-KY +1918-08123 America/Cayman
-KZ +4315+07657 Asia/Almaty most locations
-KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
-KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
-KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
-KZ +5113+05121 Asia/Oral West Kazakhstan
-LA +1758+10236 Asia/Vientiane
-LB +3353+03530 Asia/Beirut
-LC +1401-06100 America/St_Lucia
-LI +4709+00931 Europe/Vaduz
-LK +0656+07951 Asia/Colombo
-LR +0618-01047 Africa/Monrovia
-LS -2928+02730 Africa/Maseru
-LT +5441+02519 Europe/Vilnius
-LU +4936+00609 Europe/Luxembourg
-LV +5657+02406 Europe/Riga
-LY +3254+01311 Africa/Tripoli
-MA +3339-00735 Africa/Casablanca
-MC +4342+00723 Europe/Monaco
-MD +4700+02850 Europe/Chisinau
-ME +4226+01916 Europe/Podgorica
-MF +1804-06305 America/Marigot
-MG -1855+04731 Indian/Antananarivo
-MH +0709+17112 Pacific/Majuro most locations
-MH +0905+16720 Pacific/Kwajalein Kwajalein
-MK +4159+02126 Europe/Skopje
-ML +1239-00800 Africa/Bamako
-MM +1647+09610 Asia/Rangoon
-MN +4755+10653 Asia/Ulaanbaatar most locations
-MN +4801+09139 Asia/Hovd Bayan-Olgiy, Govi-Altai, Hovd, Uvs, Zavkhan
-MN +4804+11430 Asia/Choibalsan Dornod, Sukhbaatar
-MO +2214+11335 Asia/Macau
-MP +1512+14545 Pacific/Saipan
-MQ +1436-06105 America/Martinique
-MR +1806-01557 Africa/Nouakchott
-MS +1643-06213 America/Montserrat
-MT +3554+01431 Europe/Malta
-MU -2010+05730 Indian/Mauritius
-MV +0410+07330 Indian/Maldives
-MW -1547+03500 Africa/Blantyre
-MX +1924-09909 America/Mexico_City Central Time - most locations
-MX +2105-08646 America/Cancun Central Time - Quintana Roo
-MX +2058-08937 America/Merida Central Time - Campeche, Yucatan
-MX +2540-10019 America/Monterrey Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas
-MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
-MX +2838-10605 America/Chihuahua Mountain Time - Chihuahua
-MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
-MX +3232-11701 America/Tijuana Pacific Time
-MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
-MY +0133+11020 Asia/Kuching Sabah & Sarawak
-MZ -2558+03235 Africa/Maputo
-NA -2234+01706 Africa/Windhoek
-NC -2216+16530 Pacific/Noumea
-NE +1331+00207 Africa/Niamey
-NF -2903+16758 Pacific/Norfolk
-NG +0627+00324 Africa/Lagos
-NI +1209-08617 America/Managua
-NL +5222+00454 Europe/Amsterdam
-NO +5955+01045 Europe/Oslo
-NP +2743+08519 Asia/Katmandu
-NR -0031+16655 Pacific/Nauru
-NU -1901-16955 Pacific/Niue
-NZ -3652+17446 Pacific/Auckland most locations
-NZ -4357-17633 Pacific/Chatham Chatham Islands
-OM +2336+05835 Asia/Muscat
-PA +0858-07932 America/Panama
-PE -1203-07703 America/Lima
-PF -1732-14934 Pacific/Tahiti Society Islands
-PF -0900-13930 Pacific/Marquesas Marquesas Islands
-PF -2308-13457 Pacific/Gambier Gambier Islands
-PG -0930+14710 Pacific/Port_Moresby
-PH +1435+12100 Asia/Manila
-PK +2452+06703 Asia/Karachi
-PL +5215+02100 Europe/Warsaw
-PM +4703-05620 America/Miquelon
-PN -2504-13005 Pacific/Pitcairn
-PR +182806-0660622 America/Puerto_Rico
-PS +3130+03428 Asia/Gaza
-PT +3843-00908 Europe/Lisbon mainland
-PT +3238-01654 Atlantic/Madeira Madeira Islands
-PT +3744-02540 Atlantic/Azores Azores
-PW +0720+13429 Pacific/Palau
-PY -2516-05740 America/Asuncion
-QA +2517+05132 Asia/Qatar
-RE -2052+05528 Indian/Reunion
-RO +4426+02606 Europe/Bucharest
-RS +4450+02030 Europe/Belgrade
-RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
-RU +5545+03735 Europe/Moscow Moscow+00 - west Russia
-RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
-RU +5312+05009 Europe/Samara Moscow+01 - Samara, Udmurtia
-RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
-RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
-RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
-RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
-RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
-RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
-RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
-RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
-RU +5934+15048 Asia/Magadan Moscow+08 - Magadan
-RU +5301+15839 Asia/Kamchatka Moscow+09 - Kamchatka
-RU +6445+17729 Asia/Anadyr Moscow+10 - Bering Sea
-RW -0157+03004 Africa/Kigali
-SA +2438+04643 Asia/Riyadh
-SB -0932+16012 Pacific/Guadalcanal
-SC -0440+05528 Indian/Mahe
-SD +1536+03232 Africa/Khartoum
-SE +5920+01803 Europe/Stockholm
-SG +0117+10351 Asia/Singapore
-SH -1555-00542 Atlantic/St_Helena
-SI +4603+01431 Europe/Ljubljana
-SJ +7800+01600 Arctic/Longyearbyen
-SK +4809+01707 Europe/Bratislava
-SL +0830-01315 Africa/Freetown
-SM +4355+01228 Europe/San_Marino
-SN +1440-01726 Africa/Dakar
-SO +0204+04522 Africa/Mogadishu
-SR +0550-05510 America/Paramaribo
-ST +0020+00644 Africa/Sao_Tome
-SV +1342-08912 America/El_Salvador
-SY +3330+03618 Asia/Damascus
-SZ -2618+03106 Africa/Mbabane
-TC +2128-07108 America/Grand_Turk
-TD +1207+01503 Africa/Ndjamena
-TF -492110+0701303 Indian/Kerguelen
-TG +0608+00113 Africa/Lome
-TH +1345+10031 Asia/Bangkok
-TJ +3835+06848 Asia/Dushanbe
-TK -0922-17114 Pacific/Fakaofo
-TL -0833+12535 Asia/Dili
-TM +3757+05823 Asia/Ashgabat
-TN +3648+01011 Africa/Tunis
-TO -2110+17510 Pacific/Tongatapu
-TR +4101+02858 Europe/Istanbul
-TT +1039-06131 America/Port_of_Spain
-TV -0831+17913 Pacific/Funafuti
-TW +2503+12130 Asia/Taipei
-TZ -0648+03917 Africa/Dar_es_Salaam
-UA +5026+03031 Europe/Kiev most locations
-UA +4837+02218 Europe/Uzhgorod Ruthenia
-UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
-UA +4457+03406 Europe/Simferopol central Crimea
-UG +0019+03225 Africa/Kampala
-UM +1645-16931 Pacific/Johnston Johnston Atoll
-UM +2813-17722 Pacific/Midway Midway Islands
-UM +1917+16637 Pacific/Wake Wake Island
-US +404251-0740023 America/New_York Eastern Time
-US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
-US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
-US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
-US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
-US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
-US +411745-0863730 America/Indiana/Knox Eastern Time - Indiana - Starke County
-US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
-US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
-US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
-US +415100-0873900 America/Chicago Central Time
-US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
-US +382931-0871643 America/Indiana/Petersburg Central Time - Indiana - Pike County
-US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
-US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
-US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
-US +394421-1045903 America/Denver Mountain Time
-US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
-US +364708-1084111 America/Shiprock Mountain Time - Navajo
-US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona
-US +340308-1181434 America/Los_Angeles Pacific Time
-US +611305-1495401 America/Anchorage Alaska Time
-US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
-US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
-US +643004-1652423 America/Nome Alaska Time - west Alaska
-US +515248-1763929 America/Adak Aleutian Islands
-US +211825-1575130 Pacific/Honolulu Hawaii
-UY -3453-05611 America/Montevideo
-UZ +3940+06648 Asia/Samarkand west Uzbekistan
-UZ +4120+06918 Asia/Tashkent east Uzbekistan
-VA +4154+01227 Europe/Vatican
-VC +1309-06114 America/St_Vincent
-VE +1030-06656 America/Caracas
-VG +1827-06437 America/Tortola
-VI +1821-06456 America/St_Thomas
-VN +1045+10640 Asia/Ho_Chi_Minh
-VU -1740+16825 Pacific/Efate
-WF -1318-17610 Pacific/Wallis
-WS -1350-17144 Pacific/Apia
-YE +1245+04512 Asia/Aden
-YT -1247+04514 Indian/Mayotte
-ZA -2615+02800 Africa/Johannesburg
-ZM -1525+02817 Africa/Lusaka
-ZW -1750+03103 Africa/Harare
diff --git a/tools/zoneinfo/tzdata2008h/MODULE_LICENSE_PUBLIC_DOMAIN b/tools/zoneinfo/tzdata2009s/MODULE_LICENSE_PUBLIC_DOMAIN
similarity index 100%
rename from tools/zoneinfo/tzdata2008h/MODULE_LICENSE_PUBLIC_DOMAIN
rename to tools/zoneinfo/tzdata2009s/MODULE_LICENSE_PUBLIC_DOMAIN
diff --git a/tools/zoneinfo/tzdata2009s/africa b/tools/zoneinfo/tzdata2009s/africa
new file mode 100644
index 0000000..ad89bb7
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/africa
@@ -0,0 +1,997 @@
+# <pre>
+# @(#)africa 8.23
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# This data is by no means authoritative; if you think you know better,
+# go ahead and edit the file (and please send any changes to
+# tz@elsie.nci.nih.gov for general use in the future).
+
+# From Paul Eggert (2006-03-22):
+#
+# A good source for time zone historical data outside the U.S. is
+# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+# San Diego: ACS Publications, Inc. (2003).
+#
+# Gwillim Law writes that a good source
+# for recent time zone data is the International Air Transport
+# Association's Standard Schedules Information Manual (IATA SSIM),
+# published semiannually. Law sent in several helpful summaries
+# of the IATA's data after 1990.
+#
+# Except where otherwise noted, Shanks & Pottenger is the source for
+# entries through 1990, and IATA SSIM is the source for entries afterwards.
+#
+# Another source occasionally used is Edward W. Whitman, World Time Differences,
+# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
+# I found in the UCLA library.
+#
+# A reliable and entertaining source about time zones is
+# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+#
+# Previous editions of this database used WAT, CAT, SAT, and EAT
+# for +0:00 through +3:00, respectively,
+# but Mark R V Murray reports that
+# `SAST' is the official abbreviation for +2:00 in the country of South Africa,
+# `CAT' is commonly used for +2:00 in countries north of South Africa, and
+# `WAT' is probably the best name for +1:00, as the common phrase for
+# the area that includes Nigeria is ``West Africa''.
+# He has heard of ``Western Sahara Time'' for +0:00 but can find no reference.
+#
+# To make things confusing, `WAT' seems to have been used for -1:00 long ago;
+# I'd guess that this was because people needed _some_ name for -1:00,
+# and at the time, far west Africa was the only major land area in -1:00.
+# This usage is now obsolete, as the last use of -1:00 on the African
+# mainland seems to have been 1976 in Western Sahara.
+#
+# To summarize, the following abbreviations seem to have some currency:
+# -1:00 WAT West Africa Time (no longer used)
+# 0:00 GMT Greenwich Mean Time
+# 2:00 CAT Central Africa Time
+# 2:00 SAST South Africa Standard Time
+# and Murray suggests the following abbreviation:
+# 1:00 WAT West Africa Time
+# I realize that this leads to `WAT' being used for both -1:00 and 1:00
+# for times before 1976, but this is the best I can think of
+# until we get more information.
+#
+# I invented the following abbreviations; corrections are welcome!
+# 2:00 WAST West Africa Summer Time
+# 2:30 BEAT British East Africa Time (no longer used)
+# 2:44:45 BEAUT British East Africa Unified Time (no longer used)
+# 3:00 CAST Central Africa Summer Time (no longer used)
+# 3:00 SAST South Africa Summer Time (no longer used)
+# 3:00 EAT East Africa Time
+# 4:00 EAST East Africa Summer Time (no longer used)
+
+# Algeria
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Algeria 1916 only - Jun 14 23:00s 1:00 S
+Rule Algeria 1916 1919 - Oct Sun>=1 23:00s 0 -
+Rule Algeria 1917 only - Mar 24 23:00s 1:00 S
+Rule Algeria 1918 only - Mar 9 23:00s 1:00 S
+Rule Algeria 1919 only - Mar 1 23:00s 1:00 S
+Rule Algeria 1920 only - Feb 14 23:00s 1:00 S
+Rule Algeria 1920 only - Oct 23 23:00s 0 -
+Rule Algeria 1921 only - Mar 14 23:00s 1:00 S
+Rule Algeria 1921 only - Jun 21 23:00s 0 -
+Rule Algeria 1939 only - Sep 11 23:00s 1:00 S
+Rule Algeria 1939 only - Nov 19 1:00 0 -
+Rule Algeria 1944 1945 - Apr Mon>=1 2:00 1:00 S
+Rule Algeria 1944 only - Oct 8 2:00 0 -
+Rule Algeria 1945 only - Sep 16 1:00 0 -
+Rule Algeria 1971 only - Apr 25 23:00s 1:00 S
+Rule Algeria 1971 only - Sep 26 23:00s 0 -
+Rule Algeria 1977 only - May 6 0:00 1:00 S
+Rule Algeria 1977 only - Oct 21 0:00 0 -
+Rule Algeria 1978 only - Mar 24 1:00 1:00 S
+Rule Algeria 1978 only - Sep 22 3:00 0 -
+Rule Algeria 1980 only - Apr 25 0:00 1:00 S
+Rule Algeria 1980 only - Oct 31 2:00 0 -
+# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
+# more precise 0:09:21.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01
+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
+ 0:00 Algeria WE%sT 1940 Feb 25 2:00
+ 1:00 Algeria CE%sT 1946 Oct 7
+ 0:00 - WET 1956 Jan 29
+ 1:00 - CET 1963 Apr 14
+ 0:00 Algeria WE%sT 1977 Oct 21
+ 1:00 Algeria CE%sT 1979 Oct 26
+ 0:00 Algeria WE%sT 1981 May
+ 1:00 - CET
+
+# Angola
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Luanda 0:52:56 - LMT 1892
+ 0:52:04 - AOT 1911 May 26 # Angola Time
+ 1:00 - WAT
+
+# Benin
+# Whitman says they switched to 1:00 in 1946, not 1934;
+# go with Shanks & Pottenger.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Porto-Novo 0:10:28 - LMT 1912
+ 0:00 - GMT 1934 Feb 26
+ 1:00 - WAT
+
+# Botswana
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Gaborone 1:43:40 - LMT 1885
+ 2:00 - CAT 1943 Sep 19 2:00
+ 2:00 1:00 CAST 1944 Mar 19 2:00
+ 2:00 - CAT
+
+# Burkina Faso
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Ouagadougou -0:06:04 - LMT 1912
+ 0:00 - GMT
+
+# Burundi
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Bujumbura 1:57:28 - LMT 1890
+ 2:00 - CAT
+
+# Cameroon
+# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Douala 0:38:48 - LMT 1912
+ 1:00 - WAT
+
+# Cape Verde
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Atlantic/Cape_Verde -1:34:04 - LMT 1907 # Praia
+ -2:00 - CVT 1942 Sep
+ -2:00 1:00 CVST 1945 Oct 15
+ -2:00 - CVT 1975 Nov 25 2:00
+ -1:00 - CVT
+
+# Central African Republic
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Bangui 1:14:20 - LMT 1912
+ 1:00 - WAT
+
+# Chad
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Ndjamena 1:00:12 - LMT 1912
+ 1:00 - WAT 1979 Oct 14
+ 1:00 1:00 WAST 1980 Mar 8
+ 1:00 - WAT
+
+# Comoros
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Indian/Comoro 2:53:04 - LMT 1911 Jul # Moroni, Gran Comoro
+ 3:00 - EAT
+
+# Democratic Republic of Congo
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Kinshasa 1:01:12 - LMT 1897 Nov 9
+ 1:00 - WAT
+Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9
+ 2:00 - CAT
+
+# Republic of the Congo
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Brazzaville 1:01:08 - LMT 1912
+ 1:00 - WAT
+
+# Cote D'Ivoire
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Abidjan -0:16:08 - LMT 1912
+ 0:00 - GMT
+
+# Djibouti
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Djibouti 2:52:36 - LMT 1911 Jul
+ 3:00 - EAT
+
+###############################################################################
+
+# Egypt
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Egypt 1940 only - Jul 15 0:00 1:00 S
+Rule Egypt 1940 only - Oct 1 0:00 0 -
+Rule Egypt 1941 only - Apr 15 0:00 1:00 S
+Rule Egypt 1941 only - Sep 16 0:00 0 -
+Rule Egypt 1942 1944 - Apr 1 0:00 1:00 S
+Rule Egypt 1942 only - Oct 27 0:00 0 -
+Rule Egypt 1943 1945 - Nov 1 0:00 0 -
+Rule Egypt 1945 only - Apr 16 0:00 1:00 S
+Rule Egypt 1957 only - May 10 0:00 1:00 S
+Rule Egypt 1957 1958 - Oct 1 0:00 0 -
+Rule Egypt 1958 only - May 1 0:00 1:00 S
+Rule Egypt 1959 1981 - May 1 1:00 1:00 S
+Rule Egypt 1959 1965 - Sep 30 3:00 0 -
+Rule Egypt 1966 1994 - Oct 1 3:00 0 -
+Rule Egypt 1982 only - Jul 25 1:00 1:00 S
+Rule Egypt 1983 only - Jul 12 1:00 1:00 S
+Rule Egypt 1984 1988 - May 1 1:00 1:00 S
+Rule Egypt 1989 only - May 6 1:00 1:00 S
+Rule Egypt 1990 1994 - May 1 1:00 1:00 S
+# IATA (after 1990) says transitions are at 0:00.
+# Go with IATA starting in 1995, except correct 1995 entry from 09-30 to 09-29.
+Rule Egypt 1995 max - Apr lastFri 0:00s 1:00 S
+Rule Egypt 1995 2005 - Sep lastThu 23:00s 0 -
+# From Steffen Thorsen (2006-09-19):
+# The Egyptian Gazette, issue 41,090 (2006-09-18), page 1, reports:
+# Egypt will turn back clocks by one hour at the midnight of Thursday
+# after observing the daylight saving time since May.
+# http://news.gom.com.eg/gazette/pdf/2006/09/18/01.pdf
+Rule Egypt 2006 only - Sep 21 23:00s 0 -
+# From Dirk Losch (2007-08-14):
+# I received a mail from an airline which says that the daylight
+# saving time in Egypt will end in the night of 2007-09-06 to 2007-09-07.
+# From Jesper Norgaard Welen (2007-08-15): [The following agree:]
+# http://www.nentjes.info/Bill/bill5.htm
+# http://www.timeanddate.com/worldclock/city.html?n=53
+# From Steffen Thorsen (2007-09-04): The official information...:
+# http://www.sis.gov.eg/En/EgyptOnline/Miscellaneous/000002/0207000000000000001580.htm
+Rule Egypt 2007 only - Sep Thu>=1 23:00s 0 -
+# From Abdelrahman Hassan (2007-09-06):
+# Due to the Hijri (lunar Islamic calendar) year being 11 days shorter
+# than the year of the Gregorian calendar, Ramadan shifts earlier each
+# year. This year it will be observed September 13 (September is quite
+# hot in Egypt), and the idea is to make fasting easier for workers by
+# shifting business hours one hour out of daytime heat. Consequently,
+# unless discontinued, next DST may end Thursday 28 August 2008.
+# From Paul Eggert (2007-08-17):
+# For lack of better info, assume the new rule is last Thursday in August.
+
+# From Petr Machata (2009-04-06):
+# The following appeared in Red Hat bugzilla[1] (edited):
+#
+# > $ zdump -v /usr/share/zoneinfo/Africa/Cairo | grep 2009
+# > /usr/share/zoneinfo/Africa/Cairo Thu Apr 23 21:59:59 2009 UTC = Thu =
+# Apr 23
+# > 23:59:59 2009 EET isdst=0 gmtoff=7200
+# > /usr/share/zoneinfo/Africa/Cairo Thu Apr 23 22:00:00 2009 UTC = Fri =
+# Apr 24
+# > 01:00:00 2009 EEST isdst=1 gmtoff=10800
+# > /usr/share/zoneinfo/Africa/Cairo Thu Aug 27 20:59:59 2009 UTC = Thu =
+# Aug 27
+# > 23:59:59 2009 EEST isdst=1 gmtoff=10800
+# > /usr/share/zoneinfo/Africa/Cairo Thu Aug 27 21:00:00 2009 UTC = Thu =
+# Aug 27
+# > 23:00:00 2009 EET isdst=0 gmtoff=7200
+#
+# > end date should be Thu Sep 24 2009 (Last Thursday in September at 23:59=
+# :59)
+# > http://support.microsoft.com/kb/958729/
+#
+# timeanddate[2] and another site I've found[3] also support that.
+#
+# [1] <a href="https://bugzilla.redhat.com/show_bug.cgi?id=492263">
+# https://bugzilla.redhat.com/show_bug.cgi?id=492263
+# </a>
+# [2] <a href="http://www.timeanddate.com/worldclock/clockchange.html?n=53">
+# http://www.timeanddate.com/worldclock/clockchange.html?n=53
+# </a>
+# [3] <a href="http://wwp.greenwichmeantime.com/time-zone/africa/egypt/">
+# http://wwp.greenwichmeantime.com/time-zone/africa/egypt/
+# </a>
+
+# From Arthur David Olson (2009-04-20):
+# In 2009 (and for the next several years), Ramadan ends before the fourth
+# Thursday in September; Egypt is expected to revert to the last Thursday
+# in September.
+
+# From Steffen Thorsen (2009-08-11):
+# We have been able to confirm the August change with the Egyptian Cabinet
+# Information and Decision Support Center:
+# <a href="http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html">
+# http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html
+# </a>
+#
+# The Middle East News Agency
+# <a href="http://www.mena.org.eg/index.aspx">
+# http://www.mena.org.eg/index.aspx
+# </a>
+# also reports "Egypt starts winter time on August 21"
+# today in article numbered "71, 11/08/2009 12:25 GMT."
+# Only the title above is available without a subscription to their service,
+# and can be found by searching for "winter" in their search engine
+# (at least today).
+
+Rule Egypt 2008 only - Aug lastThu 23:00s 0 -
+Rule Egypt 2009 only - Aug 20 23:00s 0 -
+Rule Egypt 2010 max - Sep lastThu 23:00s 0 -
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Cairo 2:05:00 - LMT 1900 Oct
+ 2:00 Egypt EE%sT
+
+# Equatorial Guinea
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Malabo 0:35:08 - LMT 1912
+ 0:00 - GMT 1963 Dec 15
+ 1:00 - WAT
+
+# Eritrea
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Asmara 2:35:32 - LMT 1870
+ 2:35:32 - AMT 1890 # Asmara Mean Time
+ 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
+ 3:00 - EAT
+
+# Ethiopia
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time zones
+# between 1870 and 1890, and that they merged to 38E50 (2:35:20) in 1890.
+# We'll guess that 38E50 is for Adis Dera.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Addis_Ababa 2:34:48 - LMT 1870
+ 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
+ 3:00 - EAT
+
+# Gabon
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Libreville 0:37:48 - LMT 1912
+ 1:00 - WAT
+
+# Gambia
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Banjul -1:06:36 - LMT 1912
+ -1:06:36 - BMT 1935 # Banjul Mean Time
+ -1:00 - WAT 1964
+ 0:00 - GMT
+
+# Ghana
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+# Whitman says DST was observed from 1931 to ``the present'';
+# go with Shanks & Pottenger.
+Rule Ghana 1936 1942 - Sep 1 0:00 0:20 GHST
+Rule Ghana 1936 1942 - Dec 31 0:00 0 GMT
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Accra -0:00:52 - LMT 1918
+ 0:00 Ghana %s
+
+# Guinea
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Conakry -0:54:52 - LMT 1912
+ 0:00 - GMT 1934 Feb 26
+ -1:00 - WAT 1960
+ 0:00 - GMT
+
+# Guinea-Bissau
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Bissau -1:02:20 - LMT 1911 May 26
+ -1:00 - WAT 1975
+ 0:00 - GMT
+
+# Kenya
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Nairobi 2:27:16 - LMT 1928 Jul
+ 3:00 - EAT 1930
+ 2:30 - BEAT 1940
+ 2:44:45 - BEAUT 1960
+ 3:00 - EAT
+
+# Lesotho
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Maseru 1:50:00 - LMT 1903 Mar
+ 2:00 - SAST 1943 Sep 19 2:00
+ 2:00 1:00 SAST 1944 Mar 19 2:00
+ 2:00 - SAST
+
+# Liberia
+# From Paul Eggert (2006-03-22):
+# In 1972 Liberia was the last country to switch
+# from a UTC offset that was not a multiple of 15 or 20 minutes.
+# Howse reports that it was in honor of their president's birthday.
+# Shank & Pottenger report the date as May 1, whereas Howse reports Jan;
+# go with Shanks & Pottenger.
+# For Liberia before 1972, Shanks & Pottenger report -0:44, whereas Howse and
+# Whitman each report -0:44:30; go with the more precise figure.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Monrovia -0:43:08 - LMT 1882
+ -0:43:08 - MMT 1919 Mar # Monrovia Mean Time
+ -0:44:30 - LRT 1972 May # Liberia Time
+ 0:00 - GMT
+
+###############################################################################
+
+# Libya
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Libya 1951 only - Oct 14 2:00 1:00 S
+Rule Libya 1952 only - Jan 1 0:00 0 -
+Rule Libya 1953 only - Oct 9 2:00 1:00 S
+Rule Libya 1954 only - Jan 1 0:00 0 -
+Rule Libya 1955 only - Sep 30 0:00 1:00 S
+Rule Libya 1956 only - Jan 1 0:00 0 -
+Rule Libya 1982 1984 - Apr 1 0:00 1:00 S
+Rule Libya 1982 1985 - Oct 1 0:00 0 -
+Rule Libya 1985 only - Apr 6 0:00 1:00 S
+Rule Libya 1986 only - Apr 4 0:00 1:00 S
+Rule Libya 1986 only - Oct 3 0:00 0 -
+Rule Libya 1987 1989 - Apr 1 0:00 1:00 S
+Rule Libya 1987 1989 - Oct 1 0:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Tripoli 0:52:44 - LMT 1920
+ 1:00 Libya CE%sT 1959
+ 2:00 - EET 1982
+ 1:00 Libya CE%sT 1990 May 4
+# The following entries are from Shanks & Pottenger;
+# the IATA SSIM data contain some obvious errors.
+ 2:00 - EET 1996 Sep 30
+ 1:00 - CET 1997 Apr 4
+ 1:00 1:00 CEST 1997 Oct 4
+ 2:00 - EET
+
+# Madagascar
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Indian/Antananarivo 3:10:04 - LMT 1911 Jul
+ 3:00 - EAT 1954 Feb 27 23:00s
+ 3:00 1:00 EAST 1954 May 29 23:00s
+ 3:00 - EAT
+
+# Malawi
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar
+ 2:00 - CAT
+
+# Mali
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Bamako -0:32:00 - LMT 1912
+ 0:00 - GMT 1934 Feb 26
+ -1:00 - WAT 1960 Jun 20
+ 0:00 - GMT
+
+# Mauritania
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Nouakchott -1:03:48 - LMT 1912
+ 0:00 - GMT 1934 Feb 26
+ -1:00 - WAT 1960 Nov 28
+ 0:00 - GMT
+
+# Mauritius
+
+# From Steffen Thorsen (2008-06-25):
+# Mauritius plans to observe DST from 2008-11-01 to 2009-03-31 on a trial
+# basis....
+# It seems that Mauritius observed daylight saving time from 1982-10-10 to
+# 1983-03-20 as well, but that was not successful....
+# http://www.timeanddate.com/news/time/mauritius-daylight-saving-time.html
+
+# From Alex Krivenyshev (2008-06-25):
+# http://economicdevelopment.gov.mu/portal/site/Mainhomepage/menuitem.a42b24128104d9845dabddd154508a0c/?content_id=0a7cee8b5d69a110VgnVCM1000000a04a8c0RCRD
+
+# From Arthur David Olson (2008-06-30):
+# The www.timeanddate.com article cited by Steffen Thorsen notes that "A
+# final decision has yet to be made on the times that daylight saving
+# would begin and end on these dates." As a place holder, use midnight.
+
+# From Paul Eggert (2008-06-30):
+# Follow Thorsen on DST in 1982/1983, instead of Shanks & Pottenger.
+
+# From Steffen Thorsen (2008-07-10):
+# According to
+# <a href="http://www.lexpress.mu/display_article.php?news_id=111216">
+# http://www.lexpress.mu/display_article.php?news_id=111216
+# </a>
+# (in French), Mauritius will start and end their DST a few days earlier
+# than previously announced (2008-11-01 to 2009-03-31). The new start
+# date is 2008-10-26 at 02:00 and the new end date is 2009-03-27 (no time
+# given, but it is probably at either 2 or 3 wall clock time).
+#
+# A little strange though, since the article says that they moved the date
+# to align itself with Europe and USA which also change time on that date,
+# but that means they have not paid attention to what happened in
+# USA/Canada last year (DST ends first Sunday in November). I also wonder
+# why that they end on a Friday, instead of aligning with Europe which
+# changes two days later.
+
+# From Alex Krivenyshev (2008-07-11):
+# Seems that English language article "The revival of daylight saving
+# time: Energy conservation?"-# No. 16578 (07/11/2008) was originally
+# published on Monday, June 30, 2008...
+#
+# I guess that article in French "Le gouvernement avance l'introduction
+# de l'heure d'ete" stating that DST in Mauritius starting on October 26
+# and ending on March 27, 2009 is the most recent one.
+# ...
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html">
+# http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html
+# </a>
+
+# From Riad M. Hossen Ally (2008-08-03):
+# The Government of Mauritius weblink
+# <a href="http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD">
+# http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD
+# </a>
+# Cabinet Decision of July 18th, 2008 states as follows:
+#
+# 4. ...Cabinet has agreed to the introduction into the National Assembly
+# of the Time Bill which provides for the introduction of summer time in
+# Mauritius. The summer time period which will be of one hour ahead of
+# the standard time, will be aligned with that in Europe and the United
+# States of America. It will start at two o'clock in the morning on the
+# last Sunday of October and will end at two o'clock in the morning on
+# the last Sunday of March the following year. The summer time for the
+# year 2008 - 2009 will, therefore, be effective as from 26 October 2008
+# and end on 29 March 2009.
+
+# From Ed Maste (2008-10-07):
+# THE TIME BILL (No. XXVII of 2008) Explanatory Memorandum states the
+# beginning / ending of summer time is 2 o'clock standard time in the
+# morning of the last Sunday of October / last Sunday of March.
+# <a href="http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf">
+# http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf
+# </a>
+
+# From Steffen Thorsen (2009-06-05):
+# According to several sources, Mauritius will not continue to observe
+# DST the coming summer...
+#
+# Some sources, in French:
+# <a href="http://www.defimedia.info/news/946/Rashid-Beebeejaun-:-%C2%AB-L%E2%80%99heure-d%E2%80%99%C3%A9t%C3%A9-ne-sera-pas-appliqu%C3%A9e-cette-ann%C3%A9e-%C2%BB">
+# http://www.defimedia.info/news/946/Rashid-Beebeejaun-:-%C2%AB-L%E2%80%99heure-d%E2%80%99%C3%A9t%C3%A9-ne-sera-pas-appliqu%C3%A9e-cette-ann%C3%A9e-%C2%BB
+# </a>
+# <a href="http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints-">
+# http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints-
+# </a>
+#
+# Our wrap-up:
+# <a href="http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html">
+# http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html
+# </a>
+
+# From Arthur David Olson (2009-07-11):
+# The "mauritius-dst-will-not-repeat" wrapup includes this:
+# "The trial ended on March 29, 2009, when the clocks moved back by one hour
+# at 2am (or 02:00) local time..."
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Mauritius 1982 only - Oct 10 0:00 1:00 S
+Rule Mauritius 1983 only - Mar 21 0:00 0 -
+Rule Mauritius 2008 only - Oct lastSun 2:00 1:00 S
+Rule Mauritius 2009 only - Mar lastSun 2:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis
+ 4:00 Mauritius MU%sT # Mauritius Time
+# Agalega Is, Rodriguez
+# no information; probably like Indian/Mauritius
+
+# Mayotte
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
+ 3:00 - EAT
+
+# Morocco
+# See the `europe' file for Spanish Morocco (Africa/Ceuta).
+
+# From Alex Krivenyshev (2008-05-09):
+# Here is an article that Morocco plan to introduce Daylight Saving Time between
+# 1 June, 2008 and 27 September, 2008.
+#
+# "... Morocco is to save energy by adjusting its clock during summer so it will
+# be one hour ahead of GMT between 1 June and 27 September, according to
+# Communication Minister and Gov ernment Spokesman, Khalid Naciri...."
+#
+# <a href="http://www.worldtimezone.net/dst_news/dst_news_morocco01.html">
+# http://www.worldtimezone.net/dst_news/dst_news_morocco01.html
+# </a>
+# OR
+# <a href="http://en.afrik.com/news11892.html">
+# http://en.afrik.com/news11892.html
+# </a>
+
+# From Alex Krivenyshev (2008-05-09):
+# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe Presse:
+# <a href="http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view">
+# http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view
+# </a>
+#
+# Morocco shifts to daylight time on June 1st through September 27, Govt.
+# spokesman.
+
+# From Patrice Scattolin (2008-05-09):
+# According to this article:
+# <a href="http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html">
+# http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
+# </a>
+# (and republished here:
+# <a href="http://www.actu.ma/heure-dete-comment_i127896_0.html">
+# http://www.actu.ma/heure-dete-comment_i127896_0.html
+# </a>
+# )
+# the changes occurs at midnight:
+#
+# saturday night may 31st at midnight (which in french is to be
+# intrepreted as the night between saturday and sunday)
+# sunday night the 28th at midnight
+#
+# Seeing that the 28th is monday, I am guessing that she intends to say
+# the midnight of the 28th which is the midnight between sunday and
+# monday, which jives with other sources that say that it's inclusive
+# june1st to sept 27th.
+#
+# The decision was taken by decree *2-08-224 *but I can't find the decree
+# published on the web.
+#
+# It's also confirmed here:
+# <a href="http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm">
+# http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm
+# </a>
+# on a government portal as being between june 1st and sept 27th (not yet
+# posted in english).
+#
+# The following google query will generate many relevant hits:
+# <a href="http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search">
+# http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
+# </a>
+
+# From Alex Krivenyshev (2008-05-09):
+# Is Western Sahara (part which administrated by Morocco) going to follow
+# Morocco DST changes? Any information? What about other part of
+# Western Sahara - under administration of POLISARIO Front (also named
+# SADR Saharawi Arab Democratic Republic)?
+
+# From Arthur David Olson (2008-05-09):
+# XXX--guess that it is only Morocco for now; guess only 2008 for now.
+
+# From Steffen Thorsen (2008-08-27):
+# Morocco will change the clocks back on the midnight between August 31
+# and September 1. They originally planned to observe DST to near the end
+# of September:
+#
+# One article about it (in French):
+# <a href="http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default">
+# http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default
+# </a>
+#
+# We have some further details posted here:
+# <a href="http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html">
+# http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
+# </a>
+
+# From Steffen Thorsen (2009-03-17):
+# Morocco will observe DST from 2009-06-01 00:00 to 2009-08-21 00:00 according
+# to many sources, such as
+# <a href="http://news.marweb.com/morocco/entertainment/morocco-daylight-saving.html">
+# http://news.marweb.com/morocco/entertainment/morocco-daylight-saving.html
+# </a>
+# <a href="http://www.medi1sat.ma/fr/depeche.aspx?idp=2312">
+# http://www.medi1sat.ma/fr/depeche.aspx?idp=2312
+# </a>
+# (French)
+#
+# Our summary:
+# <a href="http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html">
+# http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html
+# </a>
+
+# From Alexander Krivenyshev (2009-03-17):
+# Here is a link to official document from Royaume du Maroc Premier Ministre,
+# Ministere de la Modernisation des Secteurs Publics
+#
+# Under Article 1 of Royal Decree No. 455-67 of Act 23 safar 1387 (2 june 1967)
+# concerning the amendment of the legal time, the Ministry of Modernization of
+# Public Sectors announced that the official time in the Kingdom will be
+# advanced 60 minutes from Sunday 31 May 2009 at midnight.
+#
+# <a href="http://www.mmsp.gov.ma/francais/Actualites_fr/PDF_Actualites_Fr/HeureEte_FR.pdf">
+# http://www.mmsp.gov.ma/francais/Actualites_fr/PDF_Actualites_Fr/HeureEte_FR.pdf
+# </a>
+#
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_morocco03.html">
+# http://www.worldtimezone.com/dst_news/dst_news_morocco03.html
+# </a>
+
+# RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+
+Rule Morocco 1939 only - Sep 12 0:00 1:00 S
+Rule Morocco 1939 only - Nov 19 0:00 0 -
+Rule Morocco 1940 only - Feb 25 0:00 1:00 S
+Rule Morocco 1945 only - Nov 18 0:00 0 -
+Rule Morocco 1950 only - Jun 11 0:00 1:00 S
+Rule Morocco 1950 only - Oct 29 0:00 0 -
+Rule Morocco 1967 only - Jun 3 12:00 1:00 S
+Rule Morocco 1967 only - Oct 1 0:00 0 -
+Rule Morocco 1974 only - Jun 24 0:00 1:00 S
+Rule Morocco 1974 only - Sep 1 0:00 0 -
+Rule Morocco 1976 1977 - May 1 0:00 1:00 S
+Rule Morocco 1976 only - Aug 1 0:00 0 -
+Rule Morocco 1977 only - Sep 28 0:00 0 -
+Rule Morocco 1978 only - Jun 1 0:00 1:00 S
+Rule Morocco 1978 only - Aug 4 0:00 0 -
+Rule Morocco 2008 only - Jun 1 0:00 1:00 S
+Rule Morocco 2008 only - Sep 1 0:00 0 -
+Rule Morocco 2009 only - Jun 1 0:00 1:00 S
+Rule Morocco 2009 only - Aug 21 0:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Casablanca -0:30:20 - LMT 1913 Oct 26
+ 0:00 Morocco WE%sT 1984 Mar 16
+ 1:00 - CET 1986
+ 0:00 Morocco WE%sT
+# Western Sahara
+Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan
+ -1:00 - WAT 1976 Apr 14
+ 0:00 - WET
+
+# Mozambique
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Maputo 2:10:20 - LMT 1903 Mar
+ 2:00 - CAT
+
+# Namibia
+# The 1994-04-03 transition is from Shanks & Pottenger.
+# Shanks & Pottenger report no DST after 1998-04; go with IATA.
+
+# From Petronella Sibeene (2007-03-30) in
+# <http://allafrica.com/stories/200703300178.html>:
+# While the entire country changes its time, Katima Mulilo and other
+# settlements in Caprivi unofficially will not because the sun there
+# rises and sets earlier compared to other regions. Chief of
+# Forecasting Riaan van Zyl explained that the far eastern parts of
+# the country are close to 40 minutes earlier in sunrise than the rest
+# of the country.
+#
+# From Paul Eggert (2007-03-31):
+# Apparently the Caprivi Strip informally observes Botswana time, but
+# we have no details. In the meantime people there can use Africa/Gaborone.
+
+# RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Namibia 1994 max - Sep Sun>=1 2:00 1:00 S
+Rule Namibia 1995 max - Apr Sun>=1 2:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Windhoek 1:08:24 - LMT 1892 Feb 8
+ 1:30 - SWAT 1903 Mar # SW Africa Time
+ 2:00 - SAST 1942 Sep 20 2:00
+ 2:00 1:00 SAST 1943 Mar 21 2:00
+ 2:00 - SAST 1990 Mar 21 # independence
+ 2:00 - CAT 1994 Apr 3
+ 1:00 Namibia WA%sT
+
+# Niger
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Niamey 0:08:28 - LMT 1912
+ -1:00 - WAT 1934 Feb 26
+ 0:00 - GMT 1960
+ 1:00 - WAT
+
+# Nigeria
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Lagos 0:13:36 - LMT 1919 Sep
+ 1:00 - WAT
+
+# Reunion
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
+ 4:00 - RET # Reunion Time
+#
+# Scattered Islands (Iles Eparses) administered from Reunion are as follows.
+# The following information about them is taken from
+# Iles Eparses (www.outre-mer.gouv.fr/domtom/ile.htm, 1997-07-22, in French;
+# no longer available as of 1999-08-17).
+# We have no info about their time zone histories.
+#
+# Bassas da India - uninhabited
+# Europa Island - inhabited from 1905 to 1910 by two families
+# Glorioso Is - inhabited until at least 1958
+# Juan de Nova - uninhabited
+# Tromelin - inhabited until at least 1958
+
+# Rwanda
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Kigali 2:00:16 - LMT 1935 Jun
+ 2:00 - CAT
+
+# St Helena
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown
+ -0:22:48 - JMT 1951 # Jamestown Mean Time
+ 0:00 - GMT
+# The other parts of the St Helena territory are similar:
+# Tristan da Cunha: on GMT, say Whitman and the CIA
+# Ascension: on GMT, says usno1995 and the CIA
+# Gough (scientific station since 1955; sealers wintered previously):
+# on GMT, says the CIA
+# Inaccessible, Nightingale: no information, but probably GMT
+
+# Sao Tome and Principe
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Sao_Tome 0:26:56 - LMT 1884
+ -0:36:32 - LMT 1912 # Lisbon Mean Time
+ 0:00 - GMT
+
+# Senegal
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Dakar -1:09:44 - LMT 1912
+ -1:00 - WAT 1941 Jun
+ 0:00 - GMT
+
+# Seychelles
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria
+ 4:00 - SCT # Seychelles Time
+# From Paul Eggert (2001-05-30):
+# Aldabra, Farquhar, and Desroches, originally dependencies of the
+# Seychelles, were transferred to the British Indian Ocean Territory
+# in 1965 and returned to Seychelles control in 1976. We don't know
+# whether this affected their time zone, so omit this for now.
+# Possibly the islands were uninhabited.
+
+# Sierra Leone
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+# Whitman gives Mar 31 - Aug 31 for 1931 on; go with Shanks & Pottenger.
+Rule SL 1935 1942 - Jun 1 0:00 0:40 SLST
+Rule SL 1935 1942 - Oct 1 0:00 0 WAT
+Rule SL 1957 1962 - Jun 1 0:00 1:00 SLST
+Rule SL 1957 1962 - Sep 1 0:00 0 GMT
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Freetown -0:53:00 - LMT 1882
+ -0:53:00 - FMT 1913 Jun # Freetown Mean Time
+ -1:00 SL %s 1957
+ 0:00 SL %s
+
+# Somalia
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov
+ 3:00 - EAT 1931
+ 2:30 - BEAT 1957
+ 3:00 - EAT
+
+# South Africa
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule SA 1942 1943 - Sep Sun>=15 2:00 1:00 -
+Rule SA 1943 1944 - Mar Sun>=15 2:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Johannesburg 1:52:00 - LMT 1892 Feb 8
+ 1:30 - SAST 1903 Mar
+ 2:00 SA SAST
+# Marion and Prince Edward Is
+# scientific station since 1947
+# no information
+
+# Sudan
+#
+# From <a href="http://www.sunanews.net/sn13jane.html">
+# Sudan News Agency (2000-01-13)
+# </a>, also reported by Michael De Beukelaer-Dossche via Steffen Thorsen:
+# Clocks will be moved ahead for 60 minutes all over the Sudan as of noon
+# Saturday.... This was announced Thursday by Caretaker State Minister for
+# Manpower Abdul-Rahman Nur-Eddin.
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Sudan 1970 only - May 1 0:00 1:00 S
+Rule Sudan 1970 1985 - Oct 15 0:00 0 -
+Rule Sudan 1971 only - Apr 30 0:00 1:00 S
+Rule Sudan 1972 1985 - Apr lastSun 0:00 1:00 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Khartoum 2:10:08 - LMT 1931
+ 2:00 Sudan CA%sT 2000 Jan 15 12:00
+ 3:00 - EAT
+
+# Swaziland
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Mbabane 2:04:24 - LMT 1903 Mar
+ 2:00 - SAST
+
+# Tanzania
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931
+ 3:00 - EAT 1948
+ 2:44:45 - BEAUT 1961
+ 3:00 - EAT
+
+# Togo
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Lome 0:04:52 - LMT 1893
+ 0:00 - GMT
+
+# Tunisia
+
+# From Gwillim Law (2005-04-30):
+# My correspondent, Risto Nykanen, has alerted me to another adoption of DST,
+# this time in Tunisia. According to Yahoo France News
+# <http://fr.news.yahoo.com/050426/5/4dumk.html>, in a story attributed to AP
+# and dated 2005-04-26, "Tunisia has decided to advance its official time by
+# one hour, starting on Sunday, May 1. Henceforth, Tunisian time will be
+# UTC+2 instead of UTC+1. The change will take place at 23:00 UTC next
+# Saturday." (My translation)
+#
+# From Oscar van Vlijmen (2005-05-02):
+# LaPresse, the first national daily newspaper ...
+# <http://www.lapresse.tn/archives/archives280405/actualites/lheure.html>
+# ... DST for 2005: on: Sun May 1 0h standard time, off: Fri Sept. 30,
+# 1h standard time.
+#
+# From Atef Loukil (2006-03-28):
+# The daylight saving time will be the same each year:
+# Beginning : the last Sunday of March at 02:00
+# Ending : the last Sunday of October at 03:00 ...
+# http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=1188&Itemid=50
+
+# From Steffen Thorsen (2009-03-16):
+# According to several news sources, Tunisia will not observe DST this year.
+# (Arabic)
+# <a href="http://www.elbashayer.com/?page=viewn&nid=42546">
+# http://www.elbashayer.com/?page=viewn&nid=42546
+# </a>
+# <a href="http://www.babnet.net/kiwidetail-15295.asp">
+# http://www.babnet.net/kiwidetail-15295.asp
+# </a>
+#
+# We have also confirmed this with the US embassy in Tunisia.
+# We have a wrap-up about this on the following page:
+# <a href="http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html">
+# http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html
+# </a>
+
+# From Alexander Krivenyshev (2009-03-17):
+# Here is a link to Tunis Afrique Presse News Agency
+#
+# Standard time to be kept the whole year long (tap.info.tn):
+#
+# (in English)
+# <a href="http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=26813&Itemid=157">
+# http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=26813&Itemid=157
+# </a>
+#
+# (in Arabic)
+# <a href="http://www.tap.info.tn/ar/index.php?option=com_content&task=view&id=61240&Itemid=1">
+# http://www.tap.info.tn/ar/index.php?option=com_content&task=view&id=61240&Itemid=1
+# </a>
+
+# From Arthur David Olson (2009--3-18):
+# The Tunis Afrique Presse News Agency notice contains this: "This measure is due to the fact
+# that the fasting month of ramadan coincides with the period concerned by summer time.
+# Therefore, the standard time will be kept unchanged the whole year long."
+# So foregoing DST seems to be an exception (albeit one that may be repeated in the future).
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Tunisia 1939 only - Apr 15 23:00s 1:00 S
+Rule Tunisia 1939 only - Nov 18 23:00s 0 -
+Rule Tunisia 1940 only - Feb 25 23:00s 1:00 S
+Rule Tunisia 1941 only - Oct 6 0:00 0 -
+Rule Tunisia 1942 only - Mar 9 0:00 1:00 S
+Rule Tunisia 1942 only - Nov 2 3:00 0 -
+Rule Tunisia 1943 only - Mar 29 2:00 1:00 S
+Rule Tunisia 1943 only - Apr 17 2:00 0 -
+Rule Tunisia 1943 only - Apr 25 2:00 1:00 S
+Rule Tunisia 1943 only - Oct 4 2:00 0 -
+Rule Tunisia 1944 1945 - Apr Mon>=1 2:00 1:00 S
+Rule Tunisia 1944 only - Oct 8 0:00 0 -
+Rule Tunisia 1945 only - Sep 16 0:00 0 -
+Rule Tunisia 1977 only - Apr 30 0:00s 1:00 S
+Rule Tunisia 1977 only - Sep 24 0:00s 0 -
+Rule Tunisia 1978 only - May 1 0:00s 1:00 S
+Rule Tunisia 1978 only - Oct 1 0:00s 0 -
+Rule Tunisia 1988 only - Jun 1 0:00s 1:00 S
+Rule Tunisia 1988 1990 - Sep lastSun 0:00s 0 -
+Rule Tunisia 1989 only - Mar 26 0:00s 1:00 S
+Rule Tunisia 1990 only - May 1 0:00s 1:00 S
+Rule Tunisia 2005 only - May 1 0:00s 1:00 S
+Rule Tunisia 2005 only - Sep 30 1:00s 0 -
+Rule Tunisia 2006 2008 - Mar lastSun 2:00s 1:00 S
+Rule Tunisia 2006 2008 - Oct lastSun 2:00s 0 -
+Rule Tunisia 2010 max - Mar lastSun 2:00s 1:00 S
+Rule Tunisia 2010 max - Oct lastSun 2:00s 0 -
+# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
+# more precise 0:09:21.
+# Shanks & Pottenger say the 1911 switch was on Mar 9; go with Howse's Mar 11.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Tunis 0:40:44 - LMT 1881 May 12
+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
+ 1:00 Tunisia CE%sT
+
+# Uganda
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Kampala 2:09:40 - LMT 1928 Jul
+ 3:00 - EAT 1930
+ 2:30 - BEAT 1948
+ 2:44:45 - BEAUT 1957
+ 3:00 - EAT
+
+# Zambia
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Lusaka 1:53:08 - LMT 1903 Mar
+ 2:00 - CAT
+
+# Zimbabwe
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Africa/Harare 2:04:12 - LMT 1903 Mar
+ 2:00 - CAT
diff --git a/tools/zoneinfo/tzdata2009s/antarctica b/tools/zoneinfo/tzdata2009s/antarctica
new file mode 100644
index 0000000..f18ae95
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/antarctica
@@ -0,0 +1,352 @@
+# <pre>
+# @(#)antarctica 8.7
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# From Paul Eggert (1999-11-15):
+# To keep things manageable, we list only locations occupied year-round; see
+# <a href="http://www.comnap.aq/comnap/comnap.nsf/P/Stations/">
+# COMNAP - Stations and Bases
+# </a>
+# and
+# <a href="http://www.spri.cam.ac.uk/bob/periant.htm">
+# Summary of the Peri-Antarctic Islands (1998-07-23)
+# </a>
+# for information.
+# Unless otherwise specified, we have no time zone information.
+#
+# Except for the French entries,
+# I made up all time zone abbreviations mentioned here; corrections welcome!
+# FORMAT is `zzz' and GMTOFF is 0 for locations while uninhabited.
+
+# These rules are stolen from the `europe' file.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule RussAQ 1981 1984 - Apr 1 0:00 1:00 S
+Rule RussAQ 1981 1983 - Oct 1 0:00 0 -
+Rule RussAQ 1984 1991 - Sep lastSun 2:00s 0 -
+Rule RussAQ 1985 1991 - Mar lastSun 2:00s 1:00 S
+Rule RussAQ 1992 only - Mar lastSat 23:00 1:00 S
+Rule RussAQ 1992 only - Sep lastSat 23:00 0 -
+Rule RussAQ 1993 max - Mar lastSun 2:00s 1:00 S
+Rule RussAQ 1993 1995 - Sep lastSun 2:00s 0 -
+Rule RussAQ 1996 max - Oct lastSun 2:00s 0 -
+
+# These rules are stolen from the `southamerica' file.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule ArgAQ 1964 1966 - Mar 1 0:00 0 -
+Rule ArgAQ 1964 1966 - Oct 15 0:00 1:00 S
+Rule ArgAQ 1967 only - Apr 2 0:00 0 -
+Rule ArgAQ 1967 1968 - Oct Sun>=1 0:00 1:00 S
+Rule ArgAQ 1968 1969 - Apr Sun>=1 0:00 0 -
+Rule ArgAQ 1974 only - Jan 23 0:00 1:00 S
+Rule ArgAQ 1974 only - May 1 0:00 0 -
+Rule ChileAQ 1972 1986 - Mar Sun>=9 3:00u 0 -
+Rule ChileAQ 1974 1987 - Oct Sun>=9 4:00u 1:00 S
+Rule ChileAQ 1987 only - Apr 12 3:00u 0 -
+Rule ChileAQ 1988 1989 - Mar Sun>=9 3:00u 0 -
+Rule ChileAQ 1988 only - Oct Sun>=1 4:00u 1:00 S
+Rule ChileAQ 1989 only - Oct Sun>=9 4:00u 1:00 S
+Rule ChileAQ 1990 only - Mar 18 3:00u 0 -
+Rule ChileAQ 1990 only - Sep 16 4:00u 1:00 S
+Rule ChileAQ 1991 1996 - Mar Sun>=9 3:00u 0 -
+Rule ChileAQ 1991 1997 - Oct Sun>=9 4:00u 1:00 S
+Rule ChileAQ 1997 only - Mar 30 3:00u 0 -
+Rule ChileAQ 1998 only - Mar Sun>=9 3:00u 0 -
+Rule ChileAQ 1998 only - Sep 27 4:00u 1:00 S
+Rule ChileAQ 1999 only - Apr 4 3:00u 0 -
+Rule ChileAQ 1999 max - Oct Sun>=9 4:00u 1:00 S
+Rule ChileAQ 2000 max - Mar Sun>=9 3:00u 0 -
+
+
+# Argentina - year-round bases
+# Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
+# Esperanza, San Martin Land, -6323-05659, since 1952-12-17
+# Jubany, Potter Peninsula, King George Island, -6414-0602320, since 1982-01
+# Marambio, Seymour I, -6414-05637, since 1969-10-29
+# Orcadas, Laurie I, -6016-04444, since 1904-02-22
+# San Martin, Debenham I, -6807-06708, since 1951-03-21
+# (except 1960-03 / 1976-03-21)
+
+# Australia - territories
+# Heard Island, McDonald Islands (uninhabited)
+# previously sealers and scientific personnel wintered
+# <a href="http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html">
+# Margaret Turner reports
+# </a> (1999-09-30) that they're UTC+5, with no DST;
+# presumably this is when they have visitors.
+#
+# year-round bases
+# Casey, Bailey Peninsula, -6617+11032, since 1969
+# Davis, Vestfold Hills, -6835+07759, since 1957-01-13
+# (except 1964-11 - 1969-02)
+# Mawson, Holme Bay, -6736+06253, since 1954-02-13
+
+# From Steffen Thorsen (2009-03-11):
+# Three Australian stations in Antarctica have changed their time zone:
+# Casey moved from UTC+8 to UTC+11
+# Davis moved from UTC+7 to UTC+5
+# Mawson moved from UTC+6 to UTC+5
+# The changes occurred on 2009-10-18 at 02:00 (local times).
+#
+# Government source: (Australian Antarctic Division)
+# <a href="http://www.aad.gov.au/default.asp?casid=37079">
+# http://www.aad.gov.au/default.asp?casid=37079
+# </a>
+#
+# We have more background information here:
+# <a href="http://www.timeanddate.com/news/time/antarctica-new-times.html">
+# http://www.timeanddate.com/news/time/antarctica-new-times.html
+# </a>
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Antarctica/Casey 0 - zzz 1969
+ 8:00 - WST 2009 Oct 18 2:00
+ # Western (Aus) Standard Time
+ 11:00 - CAST # Casey Time
+Zone Antarctica/Davis 0 - zzz 1957 Jan 13
+ 7:00 - DAVT 1964 Nov # Davis Time
+ 0 - zzz 1969 Feb
+ 7:00 - DAVT 2009 Oct 18 2:00
+ 5:00 - DAVT
+Zone Antarctica/Mawson 0 - zzz 1954 Feb 13
+ 6:00 - MAWT 2009 Oct 18 2:00
+ # Mawson Time
+ 5:00 - MAWT
+# References:
+# <a href="http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html">
+# Casey Weather (1998-02-26)
+# </a>
+# <a href="http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html">
+# Davis Station, Antarctica (1998-02-26)
+# </a>
+# <a href="http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html">
+# Mawson Station, Antarctica (1998-02-25)
+# </a>
+
+# Brazil - year-round base
+# Comandante Ferraz, King George Island, -6205+05824, since 1983/4
+
+# Chile - year-round bases and towns
+# Escudero, South Shetland Is, -621157-0585735, since 1994
+# Presidente Eduadro Frei, King George Island, -6214-05848, since 1969-03-07
+# General Bernardo O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02
+# Capitan Arturo Prat, -6230-05941
+# Villa Las Estrellas (a town), around the Frei base, since 1984-04-09
+# These locations have always used Santiago time; use TZ='America/Santiago'.
+
+# China - year-round bases
+# Great Wall, King George Island, -6213-05858, since 1985-02-20
+# Zhongshan, Larsemann Hills, Prydz Bay, -6922+07623, since 1989-02-26
+
+# France - year-round bases
+#
+# From Antoine Leca (1997-01-20):
+# Time data are from Nicole Pailleau at the IFRTP
+# (French Institute for Polar Research and Technology).
+# She confirms that French Southern Territories and Terre Adelie bases
+# don't observe daylight saving time, even if Terre Adelie supplies came
+# from Tasmania.
+#
+# French Southern Territories with year-round inhabitants
+#
+# Martin-de-Vivies Base, Amsterdam Island, -374105+0773155, since 1950
+# Alfred-Faure Base, Crozet Islands, -462551+0515152, since 1964
+# Port-aux-Francais, Kerguelen Islands, -492110+0701303, since 1951;
+# whaling & sealing station operated 1908/1914, 1920/1929, and 1951/1956
+#
+# St Paul Island - near Amsterdam, uninhabited
+# fishing stations operated variously 1819/1931
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Francais
+ 5:00 - TFT # ISO code TF Time
+#
+# year-round base in the main continent
+# Dumont-d'Urville, Ile des Petrels, -6640+14001, since 1956-11
+#
+# Another base at Port-Martin, 50km east, began operation in 1947.
+# It was destroyed by fire on 1952-01-14.
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Antarctica/DumontDUrville 0 - zzz 1947
+ 10:00 - PMT 1952 Jan 14 # Port-Martin Time
+ 0 - zzz 1956 Nov
+ 10:00 - DDUT # Dumont-d'Urville Time
+# Reference:
+# <a href="http://en.wikipedia.org/wiki/Dumont_d'Urville_Station">
+# Dumont d'Urville Station (2005-12-05)
+# </a>
+
+# Germany - year-round base
+# Georg von Neumayer, -7039-00815
+
+# India - year-round base
+# Dakshin Gangotri, -7005+01200
+
+# Japan - year-round bases
+# Dome Fuji, -7719+03942
+# Syowa, -690022+0393524
+#
+# From Hideyuki Suzuki (1999-02-06):
+# In all Japanese stations, +0300 is used as the standard time.
+#
+# Syowa station, which is the first antarctic station of Japan,
+# was established on 1957-01-29. Since Syowa station is still the main
+# station of Japan, it's appropriate for the principal location.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Antarctica/Syowa 0 - zzz 1957 Jan 29
+ 3:00 - SYOT # Syowa Time
+# See:
+# <a href="http://www.nipr.ac.jp/english/ara01.html">
+# NIPR Antarctic Research Activities (1999-08-17)
+# </a>
+
+# S Korea - year-round base
+# King Sejong, King George Island, -6213-05847, since 1988
+
+# New Zealand - claims
+# Balleny Islands (never inhabited)
+# Scott Island (never inhabited)
+#
+# year-round base
+# Scott, Ross Island, since 1957-01, is like Antarctica/McMurdo.
+#
+# These rules for New Zealand are stolen from the `australasia' file.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule NZAQ 1974 only - Nov 3 2:00s 1:00 D
+Rule NZAQ 1975 1988 - Oct lastSun 2:00s 1:00 D
+Rule NZAQ 1989 only - Oct 8 2:00s 1:00 D
+Rule NZAQ 1990 2006 - Oct Sun>=1 2:00s 1:00 D
+Rule NZAQ 1975 only - Feb 23 2:00s 0 S
+Rule NZAQ 1976 1989 - Mar Sun>=1 2:00s 0 S
+Rule NZAQ 1990 2007 - Mar Sun>=15 2:00s 0 S
+Rule NZAQ 2007 max - Sep lastSun 2:00s 1:00 D
+Rule NZAQ 2008 max - Apr Sun>=1 2:00s 0 S
+
+# Norway - territories
+# Bouvet (never inhabited)
+#
+# claims
+# Peter I Island (never inhabited)
+
+# Poland - year-round base
+# Arctowski, King George Island, -620945-0582745, since 1977
+
+# Russia - year-round bases
+# Bellingshausen, King George Island, -621159-0585337, since 1968-02-22
+# Mirny, Davis coast, -6633+09301, since 1956-02
+# Molodezhnaya, Alasheyev Bay, -6740+04551,
+# year-round from 1962-02 to 1999-07-01
+# Novolazarevskaya, Queen Maud Land, -7046+01150,
+# year-round from 1960/61 to 1992
+
+# Vostok, since 1957-12-16, temporarily closed 1994-02/1994-11
+# <a href="http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP">
+# From Craig Mundell (1994-12-15)</a>:
+# Vostok, which is one of the Russian stations, is set on the same
+# time as Moscow, Russia.
+#
+# From Lee Hotz (2001-03-08):
+# I queried the folks at Columbia who spent the summer at Vostok and this is
+# what they had to say about time there:
+# ``in the US Camp (East Camp) we have been on New Zealand (McMurdo)
+# time, which is 12 hours ahead of GMT. The Russian Station Vostok was
+# 6 hours behind that (although only 2 miles away, i.e. 6 hours ahead
+# of GMT). This is a time zone I think two hours east of Moscow. The
+# natural time zone is in between the two: 8 hours ahead of GMT.''
+#
+# From Paul Eggert (2001-05-04):
+# This seems to be hopelessly confusing, so I asked Lee Hotz about it
+# in person. He said that some Antartic locations set their local
+# time so that noon is the warmest part of the day, and that this
+# changes during the year and does not necessarily correspond to mean
+# solar noon. So the Vostok time might have been whatever the clocks
+# happened to be during their visit. So we still don't really know what time
+# it is at Vostok. But we'll guess UTC+6.
+#
+Zone Antarctica/Vostok 0 - zzz 1957 Dec 16
+ 6:00 - VOST # Vostok time
+
+# S Africa - year-round bases
+# Marion Island, -4653+03752
+# Sanae, -7141-00250
+
+# UK
+#
+# British Antarctic Territories (BAT) claims
+# South Orkney Islands
+# scientific station from 1903
+# whaling station at Signy I 1920/1926
+# South Shetland Islands
+#
+# year-round bases
+# Bird Island, South Georgia, -5400-03803, since 1983
+# Deception Island, -6259-06034, whaling station 1912/1931,
+# scientific station 1943/1967,
+# previously sealers and a scientific expedition wintered by accident,
+# and a garrison was deployed briefly
+# Halley, Coates Land, -7535-02604, since 1956-01-06
+# Halley is on a moving ice shelf and is periodically relocated
+# so that it is never more than 10km from its nominal location.
+# Rothera, Adelaide Island, -6734-6808, since 1976-12-01
+#
+# From Paul Eggert (2002-10-22)
+# <http://webexhibits.org/daylightsaving/g.html> says Rothera is -03 all year.
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Antarctica/Rothera 0 - zzz 1976 Dec 1
+ -3:00 - ROTT # Rothera time
+
+# Uruguay - year round base
+# Artigas, King George Island, -621104-0585107
+
+# USA - year-round bases
+#
+# Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
+#
+# From Ethan Dicks (1996-10-06):
+# It keeps the same time as Punta Arenas, Chile, because, just like us
+# and the South Pole, that's the other end of their supply line....
+# I verified with someone who was there that since 1980,
+# Palmer has followed Chile. Prior to that, before the Falklands War,
+# Palmer used to be supplied from Argentina.
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Antarctica/Palmer 0 - zzz 1965
+ -4:00 ArgAQ AR%sT 1969 Oct 5
+ -3:00 ArgAQ AR%sT 1982 May
+ -4:00 ChileAQ CL%sT
+#
+#
+# McMurdo, Ross Island, since 1955-12
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Antarctica/McMurdo 0 - zzz 1956
+ 12:00 NZAQ NZ%sT
+#
+# Amundsen-Scott, South Pole, continuously occupied since 1956-11-20
+#
+# From Paul Eggert (1996-09-03):
+# Normally it wouldn't have a separate entry, since it's like the
+# larger Antarctica/McMurdo since 1970, but it's too famous to omit.
+#
+# From Chris Carrier (1996-06-27):
+# Siple, the first commander of the South Pole station,
+# stated that he would have liked to have kept GMT at the station,
+# but that he found it more convenient to keep GMT+12
+# as supplies for the station were coming from McMurdo Sound,
+# which was on GMT+12 because New Zealand was on GMT+12 all year
+# at that time (1957). (Source: Siple's book 90 degrees SOUTH.)
+#
+# From Susan Smith
+# http://www.cybertours.com/whs/pole10.html
+# (1995-11-13 16:24:56 +1300, no longer available):
+# We use the same time as McMurdo does.
+# And they use the same time as Christchurch, NZ does....
+# One last quirk about South Pole time.
+# All the electric clocks are usually wrong.
+# Something about the generators running at 60.1hertz or something
+# makes all of the clocks run fast. So every couple of days,
+# we have to go around and set them back 5 minutes or so.
+# Maybe if we let them run fast all of the time, we'd get to leave here sooner!!
+#
+Link Antarctica/McMurdo Antarctica/South_Pole
diff --git a/tools/zoneinfo/tzdata2009s/asia b/tools/zoneinfo/tzdata2009s/asia
new file mode 100644
index 0000000..1987fc8
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/asia
@@ -0,0 +1,2396 @@
+# @(#)asia 8.44
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# This data is by no means authoritative; if you think you know better,
+# go ahead and edit the file (and please send any changes to
+# tz@elsie.nci.nih.gov for general use in the future).
+
+# From Paul Eggert (2006-03-22):
+#
+# A good source for time zone historical data outside the U.S. is
+# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+# San Diego: ACS Publications, Inc. (2003).
+#
+# Gwillim Law writes that a good source
+# for recent time zone data is the International Air Transport
+# Association's Standard Schedules Information Manual (IATA SSIM),
+# published semiannually. Law sent in several helpful summaries
+# of the IATA's data after 1990.
+#
+# Except where otherwise noted, Shanks & Pottenger is the source for
+# entries through 1990, and IATA SSIM is the source for entries afterwards.
+#
+# Another source occasionally used is Edward W. Whitman, World Time Differences,
+# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
+# I found in the UCLA library.
+#
+# A reliable and entertaining source about time zones is
+# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+#
+# I invented the abbreviations marked `*' in the following table;
+# the rest are from earlier versions of this file, or from other sources.
+# Corrections are welcome!
+# std dst
+# LMT Local Mean Time
+# 2:00 EET EEST Eastern European Time
+# 2:00 IST IDT Israel
+# 3:00 AST ADT Arabia*
+# 3:30 IRST IRDT Iran
+# 4:00 GST Gulf*
+# 5:30 IST India
+# 7:00 ICT Indochina*
+# 7:00 WIT west Indonesia
+# 8:00 CIT central Indonesia
+# 8:00 CST China
+# 9:00 CJT Central Japanese Time (1896/1937)*
+# 9:00 EIT east Indonesia
+# 9:00 JST JDT Japan
+# 9:00 KST KDT Korea
+# 9:30 CST (Australian) Central Standard Time
+#
+# See the `europe' file for Russia and Turkey in Asia.
+
+# From Guy Harris:
+# Incorporates data for Singapore from Robert Elz' asia 1.1, as well as
+# additional information from Tom Yap, Sun Microsystems Intercontinental
+# Technical Support (including a page from the Official Airline Guide -
+# Worldwide Edition). The names for time zones are guesses.
+
+###############################################################################
+
+# These rules are stolen from the `europe' file.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule EUAsia 1981 max - Mar lastSun 1:00u 1:00 S
+Rule EUAsia 1979 1995 - Sep lastSun 1:00u 0 -
+Rule EUAsia 1996 max - Oct lastSun 1:00u 0 -
+Rule E-EurAsia 1981 max - Mar lastSun 0:00 1:00 S
+Rule E-EurAsia 1979 1995 - Sep lastSun 0:00 0 -
+Rule E-EurAsia 1996 max - Oct lastSun 0:00 0 -
+Rule RussiaAsia 1981 1984 - Apr 1 0:00 1:00 S
+Rule RussiaAsia 1981 1983 - Oct 1 0:00 0 -
+Rule RussiaAsia 1984 1991 - Sep lastSun 2:00s 0 -
+Rule RussiaAsia 1985 1991 - Mar lastSun 2:00s 1:00 S
+Rule RussiaAsia 1992 only - Mar lastSat 23:00 1:00 S
+Rule RussiaAsia 1992 only - Sep lastSat 23:00 0 -
+Rule RussiaAsia 1993 max - Mar lastSun 2:00s 1:00 S
+Rule RussiaAsia 1993 1995 - Sep lastSun 2:00s 0 -
+Rule RussiaAsia 1996 max - Oct lastSun 2:00s 0 -
+
+# Afghanistan
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Kabul 4:36:48 - LMT 1890
+ 4:00 - AFT 1945
+ 4:30 - AFT
+
+# Armenia
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger have Yerevan switching to 3:00 (with Russian DST)
+# in spring 1991, then to 4:00 with no DST in fall 1995, then
+# readopting Russian DST in 1997. Go with Shanks & Pottenger, even
+# when they disagree with others. Edgar Der-Danieliantz
+# reported (1996-05-04) that Yerevan probably wouldn't use DST
+# in 1996, though it did use DST in 1995. IATA SSIM (1991/1998) reports that
+# Armenia switched from 3:00 to 4:00 in 1998 and observed DST after 1991,
+# but started switching at 3:00s in 1998.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2
+ 3:00 - YERT 1957 Mar # Yerevan Time
+ 4:00 RussiaAsia YER%sT 1991 Mar 31 2:00s
+ 3:00 1:00 YERST 1991 Sep 23 # independence
+ 3:00 RussiaAsia AM%sT 1995 Sep 24 2:00s
+ 4:00 - AMT 1997
+ 4:00 RussiaAsia AM%sT
+
+# Azerbaijan
+# From Rustam Aliyev of the Azerbaijan Internet Forum (2005-10-23):
+# According to the resolution of Cabinet of Ministers, 1997
+# Resolution available at: http://aif.az/docs/daylight_res.pdf
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Azer 1997 max - Mar lastSun 4:00 1:00 S
+Rule Azer 1997 max - Oct lastSun 5:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Baku 3:19:24 - LMT 1924 May 2
+ 3:00 - BAKT 1957 Mar # Baku Time
+ 4:00 RussiaAsia BAK%sT 1991 Mar 31 2:00s
+ 3:00 1:00 BAKST 1991 Aug 30 # independence
+ 3:00 RussiaAsia AZ%sT 1992 Sep lastSat 23:00
+ 4:00 - AZT 1996 # Azerbaijan time
+ 4:00 EUAsia AZ%sT 1997
+ 4:00 Azer AZ%sT
+
+# Bahrain
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Bahrain 3:22:20 - LMT 1920 # Al Manamah
+ 4:00 - GST 1972 Jun
+ 3:00 - AST
+
+# Bangladesh
+# From Alexander Krivenyshev (2009-05-13):
+# According to newspaper Asian Tribune (May 6, 2009) Bangladesh may introduce
+# Daylight Saving Time from June 16 to Sept 30
+#
+# Bangladesh to introduce daylight saving time likely from June 16
+# <a href="http://www.asiantribune.com/?q=node/17288">
+# http://www.asiantribune.com/?q=node/17288
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_bangladesh02.html">
+# http://www.worldtimezone.com/dst_news/dst_news_bangladesh02.html
+# </a>
+#
+# "... Bangladesh government has decided to switch daylight saving time from
+# June
+# 16 till September 30 in a bid to ensure maximum use of daylight to cope with
+# crippling power crisis. "
+#
+# The switch will remain in effect from June 16 to Sept 30 (2009) but if
+# implemented the next year, it will come in force from April 1, 2010
+
+# From Steffen Thorsen (2009-06-02):
+# They have finally decided now, but changed the start date to midnight between
+# the 19th and 20th, and they have not set the end date yet.
+#
+# Some sources:
+# <a href="http://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601">
+# http://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601
+# </a>
+# <a href="http://bdnews24.com/details.php?id=85889&cid=2">
+# http://bdnews24.com/details.php?id=85889&cid=2
+# </a>
+#
+# Our wrap-up:
+# <a href="http://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html">
+# http://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html
+# </a>
+
+# From A. N. M. Kamrus Saadat (2009-06-15):
+# Finally we've got the official mail regarding DST start time where DST start
+# time is mentioned as Jun 19 2009, 23:00 from BTRC (Bangladesh
+# Telecommunication Regulatory Commission).
+#
+# No DST end date has been announced yet.
+
+# From Alexander Krivenyshev (2009-09-25):
+# Bangladesh won't go back to Standard Time from October 1, 2009,
+# instead it will continue DST measure till the cabinet makes a fresh decision.
+#
+# Following report by same newspaper-"The Daily Star Friday":
+# "DST change awaits cabinet decision-Clock won't go back by 1-hr from Oct 1"
+# <a href="http://www.thedailystar.net/newDesign/news-details.php?nid=107021">
+# http://www.thedailystar.net/newDesign/news-details.php?nid=107021
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_bangladesh04.html">
+# http://www.worldtimezone.com/dst_news/dst_news_bangladesh04.html
+# </a>
+
+# From Steffen Thorsen (2009-10-13):
+# IANS (Indo-Asian News Service) now reports:
+# Bangladesh has decided that the clock advanced by an hour to make
+# maximum use of daylight hours as an energy saving measure would
+# "continue for an indefinite period."
+#
+# One of many places where it is published:
+# <a href="http://www.thaindian.com/newsportal/business/bangladesh-to-continue-indefinitely-with-advanced-time_100259987.html">
+# http://www.thaindian.com/newsportal/business/bangladesh-to-continue-indefinitely-with-advanced-time_100259987.html
+# </a>
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Dhaka 6:01:40 - LMT 1890
+ 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
+ 6:30 - BURT 1942 May 15 # Burma Time
+ 5:30 - IST 1942 Sep
+ 6:30 - BURT 1951 Sep 30
+ 6:00 - DACT 1971 Mar 26 # Dacca Time
+ 6:00 - BDT 2009 Jun 19 23:00 # Bangladesh Time
+ 6:00 1:00 BDST
+
+# Bhutan
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Thimphu 5:58:36 - LMT 1947 Aug 15 # or Thimbu
+ 5:30 - IST 1987 Oct
+ 6:00 - BTT # Bhutan Time
+
+# British Indian Ocean Territory
+# Whitman and the 1995 CIA time zone map say 5:00, but the
+# 1997 and later maps say 6:00. Assume the switch occurred in 1996.
+# We have no information as to when standard time was introduced;
+# assume it occurred in 1907, the same year as Mauritius (which
+# then contained the Chagos Archipelago).
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Indian/Chagos 4:49:40 - LMT 1907
+ 5:00 - IOT 1996 # BIOT Time
+ 6:00 - IOT
+
+# Brunei
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan
+ 7:30 - BNT 1933
+ 8:00 - BNT
+
+# Burma / Myanmar
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Rangoon 6:24:40 - LMT 1880 # or Yangon
+ 6:24:36 - RMT 1920 # Rangoon Mean Time?
+ 6:30 - BURT 1942 May # Burma Time
+ 9:00 - JST 1945 May 3
+ 6:30 - MMT # Myanmar Time
+
+# Cambodia
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Phnom_Penh 6:59:40 - LMT 1906 Jun 9
+ 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT?
+ 7:00 - ICT 1912 May
+ 8:00 - ICT 1931 May
+ 7:00 - ICT
+
+# China
+
+# From Guy Harris:
+# People's Republic of China. Yes, they really have only one time zone.
+
+# From Bob Devine (1988-01-28):
+# No they don't. See TIME mag, 1986-02-17 p.52. Even though
+# China is across 4 physical time zones, before Feb 1, 1986 only the
+# Peking (Bejing) time zone was recognized. Since that date, China
+# has two of 'em -- Peking's and Urumqi (named after the capital of
+# the Xinjiang Uyghur Autonomous Region). I don't know about DST for it.
+#
+# . . .I just deleted the DST table and this editor makes it too
+# painful to suck in another copy.. So, here is what I have for
+# DST start/end dates for Peking's time zone (info from AP):
+#
+# 1986 May 4 - Sept 14
+# 1987 mid-April - ??
+
+# From U. S. Naval Observatory (1989-01-19):
+# CHINA 8 H AHEAD OF UTC ALL OF CHINA, INCL TAIWAN
+# CHINA 9 H AHEAD OF UTC APR 17 - SEP 10
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger write that China (except for Hong Kong and Macau)
+# has had a single time zone since 1980 May 1, observing summer DST
+# from 1986 through 1991; this contradicts Devine's
+# note about Time magazine, though apparently _something_ happened in 1986.
+# Go with Shanks & Pottenger for now. I made up names for the other
+# pre-1980 time zones.
+
+# From Shanks & Pottenger:
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Shang 1940 only - Jun 3 0:00 1:00 D
+Rule Shang 1940 1941 - Oct 1 0:00 0 S
+Rule Shang 1941 only - Mar 16 0:00 1:00 D
+Rule PRC 1986 only - May 4 0:00 1:00 D
+Rule PRC 1986 1991 - Sep Sun>=11 0:00 0 S
+Rule PRC 1987 1991 - Apr Sun>=10 0:00 1:00 D
+
+# From Anthony Fok (2001-12-20):
+# BTW, I did some research on-line and found some info regarding these five
+# historic timezones from some Taiwan websites. And yes, there are official
+# Chinese names for these locales (before 1949).
+#
+# From Jesper Norgaard Welen (2006-07-14):
+# I have investigated the timezones around 1970 on the
+# http://www.astro.com/atlas site [with provinces and county
+# boundaries summarized below].... A few other exceptions were two
+# counties on the Sichuan side of the Xizang-Sichuan border,
+# counties Dege and Baiyu which lies on the Sichuan side and are
+# therefore supposed to be GMT+7, Xizang region being GMT+6, but Dege
+# county is GMT+8 according to astro.com while Baiyu county is GMT+6
+# (could be true), for the moment I am assuming that those two
+# counties are mistakes in the astro.com data.
+
+# From Paul Eggert (2008-02-11):
+# I just now checked Google News for western news sources that talk
+# about China's single time zone, and couldn't find anything before 1986
+# talking about China being in one time zone. (That article was: Jim
+# Mann, "A clumsy embrace for another western custom: China on daylight
+# time--sort of", Los Angeles Times, 1986-05-05. By the way, this
+# article confirms the tz database's data claiming that China began
+# observing daylight saving time in 1986.
+#
+# From Thomas S. Mullaney (2008-02-11):
+# I think you're combining two subjects that need to treated
+# separately: daylight savings (which, you're correct, wasn't
+# implemented until the 1980s) and the unified time zone centered near
+# Beijing (which was implemented in 1949). Briefly, there was also a
+# "Lhasa Time" in Tibet and "Urumqi Time" in Xinjiang. The first was
+# ceased, and the second eventually recognized (again, in the 1980s).
+#
+# From Paul Eggert (2008-06-30):
+# There seems to be a good chance China switched to a single time zone in 1949
+# rather than in 1980 as Shanks & Pottenger have it, but we don't have a
+# reliable documentary source saying so yet, so for now we still go with
+# Shanks & Pottenger.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+# Changbai Time ("Long-white Time", Long-white = Heilongjiang area)
+# Heilongjiang (except Mohe county), Jilin
+Zone Asia/Harbin 8:26:44 - LMT 1928 # or Haerbin
+ 8:30 - CHAT 1932 Mar # Changbai Time
+ 8:00 - CST 1940
+ 9:00 - CHAT 1966 May
+ 8:30 - CHAT 1980 May
+ 8:00 PRC C%sT
+# Zhongyuan Time ("Central plain Time")
+# most of China
+Zone Asia/Shanghai 8:05:52 - LMT 1928
+ 8:00 Shang C%sT 1949
+ 8:00 PRC C%sT
+# Long-shu Time (probably due to Long and Shu being two names of that area)
+# Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
+# most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
+# counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
+# Yangchun, Yangjiang, Yu'nan, and Yunfu.
+Zone Asia/Chongqing 7:06:20 - LMT 1928 # or Chungking
+ 7:00 - LONT 1980 May # Long-shu Time
+ 8:00 PRC C%sT
+# Xin-zang Time ("Xinjiang-Tibet Time")
+# The Gansu counties Aksay, Anxi, Dunhuang, Subei; west Qinghai;
+# the Guangdong counties Xuwen, Haikang, Suixi, Lianjiang,
+# Zhanjiang, Wuchuan, Huazhou, Gaozhou, Maoming, Dianbai, and Xinyi;
+# east Tibet, including Lhasa, Chamdo, Shigaise, Jimsar, Shawan and Hutubi;
+# east Xinjiang, including Urumqi, Turpan, Karamay, Korla, Minfeng, Jinghe,
+# Wusu, Qiemo, Xinyan, Wulanwusu, Jinghe, Yumin, Tacheng, Tuoli, Emin,
+# Shihezi, Changji, Yanqi, Heshuo, Tuokexun, Tulufan, Shanshan, Hami,
+# Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan.
+Zone Asia/Urumqi 5:50:20 - LMT 1928 # or Urumchi
+ 6:00 - URUT 1980 May # Urumqi Time
+ 8:00 PRC C%sT
+# Kunlun Time
+# West Tibet, including Pulan, Aheqi, Shufu, Shule;
+# West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke,
+# Zhaosu, Tekesi, Gongliu, Chabuchaer, Huocheng, Bole, Pishan, Suiding,
+# and Yarkand.
+Zone Asia/Kashgar 5:03:56 - LMT 1928 # or Kashi or Kaxgar
+ 5:30 - KAST 1940 # Kashgar Time
+ 5:00 - KAST 1980 May
+ 8:00 PRC C%sT
+
+
+# From Lee Yiu Chung (2009-10-24):
+# I found there are some mistakes for the historial DST rule for Hong
+# Kong. Accoring to the DST record from Hong Kong Observatory (actually,
+# it is not [an] observatory, but the official meteorological agency of HK,
+# and also serves as the official timing agency), there are some missing
+# and incorrect rules. Although the exact switch over time is missing, I
+# think 3:30 is correct. The official DST record for Hong Kong can be
+# obtained from
+# <a href="http://www.hko.gov.hk/gts/time/Summertime.htm">
+# http://www.hko.gov.hk/gts/time/Summertime.htm
+# </a>.
+
+# From Arthur David Olson (2009-10-28):
+# Here are the dates given at
+# <a href="http://www.hko.gov.hk/gts/time/Summertime.htm">
+# http://www.hko.gov.hk/gts/time/Summertime.htm
+# </a>
+# as of 2009-10-28:
+# Year Period
+# 1941 1 Apr to 30 Sep
+# 1942 Whole year
+# 1943 Whole year
+# 1944 Whole year
+# 1945 Whole year
+# 1946 20 Apr to 1 Dec
+# 1947 13 Apr to 30 Dec
+# 1948 2 May to 31 Oct
+# 1949 3 Apr to 30 Oct
+# 1950 2 Apr to 29 Oct
+# 1951 1 Apr to 28 Oct
+# 1952 6 Apr to 25 Oct
+# 1953 5 Apr to 1 Nov
+# 1954 21 Mar to 31 Oct
+# 1955 20 Mar to 6 Nov
+# 1956 18 Mar to 4 Nov
+# 1957 24 Mar to 3 Nov
+# 1958 23 Mar to 2 Nov
+# 1959 22 Mar to 1 Nov
+# 1960 20 Mar to 6 Nov
+# 1961 19 Mar to 5 Nov
+# 1962 18 Mar to 4 Nov
+# 1963 24 Mar to 3 Nov
+# 1964 22 Mar to 1 Nov
+# 1965 18 Apr to 17 Oct
+# 1966 17 Apr to 16 Oct
+# 1967 16 Apr to 22 Oct
+# 1968 21 Apr to 20 Oct
+# 1969 20 Apr to 19 Oct
+# 1970 19 Apr to 18 Oct
+# 1971 18 Apr to 17 Oct
+# 1972 16 Apr to 22 Oct
+# 1973 22 Apr to 21 Oct
+# 1973/74 30 Dec 73 to 20 Oct 74
+# 1975 20 Apr to 19 Oct
+# 1976 18 Apr to 17 Oct
+# 1977 Nil
+# 1978 Nil
+# 1979 13 May to 21 Oct
+# 1980 to Now Nil
+# The page does not give start or end times of day.
+# The page does not give a start date for 1942.
+# The page does not givw an end date for 1945.
+# The Japanese occupation of Hong Kong began on 1941-12-25.
+# The Japanese surrender of Hong Kong was signed 1945-09-15.
+# For lack of anything better, use start of those days as the transition times.
+
+# Hong Kong (Xianggang)
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule HK 1941 only - Apr 1 3:30 1:00 S
+Rule HK 1941 only - Sep 30 3:30 0 -
+Rule HK 1946 only - Apr 20 3:30 1:00 S
+Rule HK 1946 only - Dec 1 3:30 0 -
+Rule HK 1947 only - Apr 13 3:30 1:00 S
+Rule HK 1947 only - Dec 30 3:30 0 -
+Rule HK 1948 only - May 2 3:30 1:00 S
+Rule HK 1948 1951 - Oct lastSun 3:30 0 -
+Rule HK 1952 only - Oct 25 3:30 0 -
+Rule HK 1949 1953 - Apr Sun>=1 3:30 1:00 S
+Rule HK 1953 only - Nov 1 3:30 0 -
+Rule HK 1954 1964 - Mar Sun>=18 3:30 1:00 S
+Rule HK 1954 only - Oct 31 3:30 0 -
+Rule HK 1955 1964 - Nov Sun>=1 3:30 0 -
+Rule HK 1965 1977 - Apr Sun>=16 3:30 1:00 S
+Rule HK 1965 1977 - Oct Sun>=16 3:30 0 -
+Rule HK 1973 only - Dec 30 3:30 1:00 S
+Rule HK 1979 only - May Sun>=8 3:30 1:00 S
+Rule HK 1979 only - Oct Sun>=16 3:30 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Hong_Kong 7:36:36 - LMT 1904 Oct 30
+ 8:00 HK HK%sT 1941 Dec 25
+ 9:00 - JST 1945 Sep 15
+ 8:00 HK HK%sT
+
+###############################################################################
+
+# Taiwan
+
+# Shanks & Pottenger write that Taiwan observed DST during 1945, when it
+# was still controlled by Japan. This is hard to believe, but we don't
+# have any other information.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Taiwan 1945 1951 - May 1 0:00 1:00 D
+Rule Taiwan 1945 1951 - Oct 1 0:00 0 S
+Rule Taiwan 1952 only - Mar 1 0:00 1:00 D
+Rule Taiwan 1952 1954 - Nov 1 0:00 0 S
+Rule Taiwan 1953 1959 - Apr 1 0:00 1:00 D
+Rule Taiwan 1955 1961 - Oct 1 0:00 0 S
+Rule Taiwan 1960 1961 - Jun 1 0:00 1:00 D
+Rule Taiwan 1974 1975 - Apr 1 0:00 1:00 D
+Rule Taiwan 1974 1975 - Oct 1 0:00 0 S
+Rule Taiwan 1980 only - Jun 30 0:00 1:00 D
+Rule Taiwan 1980 only - Sep 30 0:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Taipei 8:06:00 - LMT 1896 # or Taibei or T'ai-pei
+ 8:00 Taiwan C%sT
+
+# Macau (Macao, Aomen)
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Macau 1961 1962 - Mar Sun>=16 3:30 1:00 S
+Rule Macau 1961 1964 - Nov Sun>=1 3:30 0 -
+Rule Macau 1963 only - Mar Sun>=16 0:00 1:00 S
+Rule Macau 1964 only - Mar Sun>=16 3:30 1:00 S
+Rule Macau 1965 only - Mar Sun>=16 0:00 1:00 S
+Rule Macau 1965 only - Oct 31 0:00 0 -
+Rule Macau 1966 1971 - Apr Sun>=16 3:30 1:00 S
+Rule Macau 1966 1971 - Oct Sun>=16 3:30 0 -
+Rule Macau 1972 1974 - Apr Sun>=15 0:00 1:00 S
+Rule Macau 1972 1973 - Oct Sun>=15 0:00 0 -
+Rule Macau 1974 1977 - Oct Sun>=15 3:30 0 -
+Rule Macau 1975 1977 - Apr Sun>=15 3:30 1:00 S
+Rule Macau 1978 1980 - Apr Sun>=15 0:00 1:00 S
+Rule Macau 1978 1980 - Oct Sun>=15 0:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Macau 7:34:20 - LMT 1912
+ 8:00 Macau MO%sT 1999 Dec 20 # return to China
+ 8:00 PRC C%sT
+
+
+###############################################################################
+
+# Cyprus
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Cyprus 1975 only - Apr 13 0:00 1:00 S
+Rule Cyprus 1975 only - Oct 12 0:00 0 -
+Rule Cyprus 1976 only - May 15 0:00 1:00 S
+Rule Cyprus 1976 only - Oct 11 0:00 0 -
+Rule Cyprus 1977 1980 - Apr Sun>=1 0:00 1:00 S
+Rule Cyprus 1977 only - Sep 25 0:00 0 -
+Rule Cyprus 1978 only - Oct 2 0:00 0 -
+Rule Cyprus 1979 1997 - Sep lastSun 0:00 0 -
+Rule Cyprus 1981 1998 - Mar lastSun 0:00 1:00 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Nicosia 2:13:28 - LMT 1921 Nov 14
+ 2:00 Cyprus EE%sT 1998 Sep
+ 2:00 EUAsia EE%sT
+# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
+
+# Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
+# However, for various reasons many users expect to find it under Europe.
+Link Asia/Nicosia Europe/Nicosia
+
+# Georgia
+# From Paul Eggert (1994-11-19):
+# Today's _Economist_ (p 60) reports that Georgia moved its clocks forward
+# an hour recently, due to a law proposed by Zurab Murvanidze,
+# an MP who went on a hunger strike for 11 days to force discussion about it!
+# We have no details, but we'll guess they didn't move the clocks back in fall.
+#
+# From Mathew Englander, quoting AP (1996-10-23 13:05-04):
+# Instead of putting back clocks at the end of October, Georgia
+# will stay on daylight savings time this winter to save energy,
+# President Eduard Shevardnadze decreed Wednesday.
+#
+# From the BBC via Joseph S. Myers (2004-06-27):
+#
+# Georgia moved closer to Western Europe on Sunday... The former Soviet
+# republic has changed its time zone back to that of Moscow. As a result it
+# is now just four hours ahead of Greenwich Mean Time, rather than five hours
+# ahead. The switch was decreed by the pro-Western president of Georgia,
+# Mikhail Saakashvili, who said the change was partly prompted by the process
+# of integration into Europe.
+
+# From Teimuraz Abashidze (2005-11-07):
+# Government of Georgia ... decided to NOT CHANGE daylight savings time on
+# [Oct.] 30, as it was done before during last more than 10 years.
+# Currently, we are in fact GMT +4:00, as before 30 October it was GMT
+# +3:00.... The problem is, there is NO FORMAL LAW or governmental document
+# about it. As far as I can find, I was told, that there is no document,
+# because we just DIDN'T ISSUE document about switching to winter time....
+# I don't know what can be done, especially knowing that some years ago our
+# DST rules where changed THREE TIMES during one month.
+
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Tbilisi 2:59:16 - LMT 1880
+ 2:59:16 - TBMT 1924 May 2 # Tbilisi Mean Time
+ 3:00 - TBIT 1957 Mar # Tbilisi Time
+ 4:00 RussiaAsia TBI%sT 1991 Mar 31 2:00s
+ 3:00 1:00 TBIST 1991 Apr 9 # independence
+ 3:00 RussiaAsia GE%sT 1992 # Georgia Time
+ 3:00 E-EurAsia GE%sT 1994 Sep lastSun
+ 4:00 E-EurAsia GE%sT 1996 Oct lastSun
+ 4:00 1:00 GEST 1997 Mar lastSun
+ 4:00 E-EurAsia GE%sT 2004 Jun 27
+ 3:00 RussiaAsia GE%sT 2005 Mar lastSun 2:00
+ 4:00 - GET
+
+# East Timor
+
+# See Indonesia for the 1945 transition.
+
+# From Joao Carrascalao, brother of the former governor of East Timor, in
+# <a href="http://etan.org/et99c/december/26-31/30ETMAY.htm">
+# East Timor may be late for its millennium
+# </a> (1999-12-26/31):
+# Portugal tried to change the time forward in 1974 because the sun
+# rises too early but the suggestion raised a lot of problems with the
+# Timorese and I still don't think it would work today because it
+# conflicts with their way of life.
+
+# From Paul Eggert (2000-12-04):
+# We don't have any record of the above attempt.
+# Most likely our records are incomplete, but we have no better data.
+
+# <a href="http://www.hri.org/news/world/undh/last/00-08-16.undh.html">
+# From Manoel de Almeida e Silva, Deputy Spokesman for the UN Secretary-General
+# (2000-08-16)</a>:
+# The Cabinet of the East Timor Transition Administration decided
+# today to advance East Timor's time by one hour. The time change,
+# which will be permanent, with no seasonal adjustment, will happen at
+# midnight on Saturday, September 16.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Dili 8:22:20 - LMT 1912
+ 8:00 - TLT 1942 Feb 21 23:00 # E Timor Time
+ 9:00 - JST 1945 Sep 23
+ 9:00 - TLT 1976 May 3
+ 8:00 - CIT 2000 Sep 17 00:00
+ 9:00 - TLT
+
+# India
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata
+ 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
+ 6:30 - BURT 1942 May 15 # Burma Time
+ 5:30 - IST 1942 Sep
+ 5:30 1:00 IST 1945 Oct 15
+ 5:30 - IST
+# The following are like Asia/Kolkata:
+# Andaman Is
+# Lakshadweep (Laccadive, Minicoy and Amindivi Is)
+# Nicobar Is
+
+# Indonesia
+#
+# From Gwillim Law (2001-05-28), overriding Shanks & Pottenger:
+# <http://www.sumatera-inc.com/go_to_invest/about_indonesia.asp#standtime>
+# says that Indonesia's time zones changed on 1988-01-01. Looking at some
+# time zone maps, I think that must refer to Western Borneo (Kalimantan Barat
+# and Kalimantan Tengah) switching from UTC+8 to UTC+7.
+#
+# From Paul Eggert (2007-03-10):
+# Here is another correction to Shanks & Pottenger.
+# JohnTWB writes that Japanese forces did not surrender control in
+# Indonesia until 1945-09-01 00:00 at the earliest (in Jakarta) and
+# other formal surrender ceremonies were September 9, 11, and 13, plus
+# September 12 for the regional surrender to Mountbatten in Singapore.
+# These would be the earliest possible times for a change.
+# Regimes horaires pour le monde entier, by Henri Le Corre, (Editions
+# Traditionnelles, 1987, Paris) says that Java and Madura switched
+# from JST to UTC+07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
+# (Hollandia). For now, assume all Indonesian locations other than Jayapura
+# switched on 1945-09-23.
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Jakarta 7:07:12 - LMT 1867 Aug 10
+# Shanks & Pottenger say the next transition was at 1924 Jan 1 0:13,
+# but this must be a typo.
+ 7:07:12 - JMT 1923 Dec 31 23:47:12 # Jakarta
+ 7:20 - JAVT 1932 Nov # Java Time
+ 7:30 - WIT 1942 Mar 23
+ 9:00 - JST 1945 Sep 23
+ 7:30 - WIT 1948 May
+ 8:00 - WIT 1950 May
+ 7:30 - WIT 1964
+ 7:00 - WIT
+Zone Asia/Pontianak 7:17:20 - LMT 1908 May
+ 7:17:20 - PMT 1932 Nov # Pontianak MT
+ 7:30 - WIT 1942 Jan 29
+ 9:00 - JST 1945 Sep 23
+ 7:30 - WIT 1948 May
+ 8:00 - WIT 1950 May
+ 7:30 - WIT 1964
+ 8:00 - CIT 1988 Jan 1
+ 7:00 - WIT
+Zone Asia/Makassar 7:57:36 - LMT 1920
+ 7:57:36 - MMT 1932 Nov # Macassar MT
+ 8:00 - CIT 1942 Feb 9
+ 9:00 - JST 1945 Sep 23
+ 8:00 - CIT
+Zone Asia/Jayapura 9:22:48 - LMT 1932 Nov
+ 9:00 - EIT 1944 Sep 1
+ 9:30 - CST 1964
+ 9:00 - EIT
+
+# Iran
+
+# From Roozbeh Pournader (2003-03-15):
+# This is an English translation of what I just found (originally in Persian).
+# The Gregorian dates in brackets are mine:
+#
+# Official Newspaper No. 13548-1370/6/25 [1991-09-16]
+# No. 16760/T233 H 1370/6/10 [1991-09-01]
+#
+# The Rule About Change of the Official Time of the Country
+#
+# The Board of Ministers, in the meeting dated 1370/5/23 [1991-08-14],
+# based on the suggestion number 2221/D dated 1370/4/22 [1991-07-13]
+# of the Country's Organization for Official and Employment Affairs,
+# and referring to the law for equating the working hours of workers
+# and officers in the whole country dated 1359/4/23 [1980-07-14], and
+# for synchronizing the official times of the country, agreed that:
+#
+# The official time of the country will should move forward one hour
+# at the 24[:00] hours of the first day of Farvardin and should return
+# to its previous state at the 24[:00] hours of the 30th day of
+# Shahrivar.
+#
+# First Deputy to the President - Hassan Habibi
+#
+# From personal experience, that agrees with what has been followed
+# for at least the last 5 years. Before that, for a few years, the
+# date used was the first Thursday night of Farvardin and the last
+# Thursday night of Shahrivar, but I can't give exact dates....
+# I have also changed the abbreviations to what is considered correct
+# here in Iran, IRST for regular time and IRDT for daylight saving time.
+#
+# From Roozbeh Pournader (2005-04-05):
+# The text of the Iranian law, in effect since 1925, clearly mentions
+# that the true solar year is the measure, and there is no arithmetic
+# leap year calculation involved. There has never been any serious
+# plan to change that law....
+#
+# From Paul Eggert (2006-03-22):
+# Go with Shanks & Pottenger before Sept. 1991, and with Pournader thereafter.
+# I used Ed Reingold's cal-persia in GNU Emacs 21.2 to check Persian dates,
+# stopping after 2037 when 32-bit time_t's overflow.
+# That cal-persia used Birashk's approximation, which disagrees with the solar
+# calendar predictions for the year 2025, so I corrected those dates by hand.
+#
+# From Oscar van Vlijmen (2005-03-30), writing about future
+# discrepancies between cal-persia and the Iranian calendar:
+# For 2091 solar-longitude-after yields 2091-03-20 08:40:07.7 UT for
+# the vernal equinox and that gets so close to 12:00 some local
+# Iranian time that the definition of the correct location needs to be
+# known exactly, amongst other factors. 2157 is even closer:
+# 2157-03-20 08:37:15.5 UT. But the Gregorian year 2025 should give
+# no interpretation problem whatsoever. By the way, another instant
+# in the near future where there will be a discrepancy between
+# arithmetical and astronomical Iranian calendars will be in 2058:
+# vernal equinox on 2058-03-20 09:03:05.9 UT. The Java version of
+# Reingold's/Dershowitz' calculator gives correctly the Gregorian date
+# 2058-03-21 for 1 Farvardin 1437 (astronomical).
+#
+# From Steffen Thorsen (2006-03-22):
+# Several of my users have reported that Iran will not observe DST anymore:
+# http://www.irna.ir/en/news/view/line-17/0603193812164948.htm
+#
+# From Reuters (2007-09-16), with a heads-up from Jesper Norgaard Welen:
+# ... the Guardian Council ... approved a law on Sunday to re-introduce
+# daylight saving time ...
+# http://uk.reuters.com/article/oilRpt/idUKBLA65048420070916
+#
+# From Roozbeh Pournader (2007-11-05):
+# This is quoted from Official Gazette of the Islamic Republic of
+# Iran, Volume 63, Number 18242, dated Tuesday 1386/6/24
+# [2007-10-16]. I am doing the best translation I can:...
+# The official time of the country will be moved forward for one hour
+# on the 24 hours of the first day of the month of Farvardin and will
+# be changed back to its previous state on the 24 hours of the
+# thirtieth day of Shahrivar.
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Iran 1978 1980 - Mar 21 0:00 1:00 D
+Rule Iran 1978 only - Oct 21 0:00 0 S
+Rule Iran 1979 only - Sep 19 0:00 0 S
+Rule Iran 1980 only - Sep 23 0:00 0 S
+Rule Iran 1991 only - May 3 0:00 1:00 D
+Rule Iran 1992 1995 - Mar 22 0:00 1:00 D
+Rule Iran 1991 1995 - Sep 22 0:00 0 S
+Rule Iran 1996 only - Mar 21 0:00 1:00 D
+Rule Iran 1996 only - Sep 21 0:00 0 S
+Rule Iran 1997 1999 - Mar 22 0:00 1:00 D
+Rule Iran 1997 1999 - Sep 22 0:00 0 S
+Rule Iran 2000 only - Mar 21 0:00 1:00 D
+Rule Iran 2000 only - Sep 21 0:00 0 S
+Rule Iran 2001 2003 - Mar 22 0:00 1:00 D
+Rule Iran 2001 2003 - Sep 22 0:00 0 S
+Rule Iran 2004 only - Mar 21 0:00 1:00 D
+Rule Iran 2004 only - Sep 21 0:00 0 S
+Rule Iran 2005 only - Mar 22 0:00 1:00 D
+Rule Iran 2005 only - Sep 22 0:00 0 S
+Rule Iran 2008 only - Mar 21 0:00 1:00 D
+Rule Iran 2008 only - Sep 21 0:00 0 S
+Rule Iran 2009 2011 - Mar 22 0:00 1:00 D
+Rule Iran 2009 2011 - Sep 22 0:00 0 S
+Rule Iran 2012 only - Mar 21 0:00 1:00 D
+Rule Iran 2012 only - Sep 21 0:00 0 S
+Rule Iran 2013 2015 - Mar 22 0:00 1:00 D
+Rule Iran 2013 2015 - Sep 22 0:00 0 S
+Rule Iran 2016 only - Mar 21 0:00 1:00 D
+Rule Iran 2016 only - Sep 21 0:00 0 S
+Rule Iran 2017 2019 - Mar 22 0:00 1:00 D
+Rule Iran 2017 2019 - Sep 22 0:00 0 S
+Rule Iran 2020 only - Mar 21 0:00 1:00 D
+Rule Iran 2020 only - Sep 21 0:00 0 S
+Rule Iran 2021 2023 - Mar 22 0:00 1:00 D
+Rule Iran 2021 2023 - Sep 22 0:00 0 S
+Rule Iran 2024 only - Mar 21 0:00 1:00 D
+Rule Iran 2024 only - Sep 21 0:00 0 S
+Rule Iran 2025 2027 - Mar 22 0:00 1:00 D
+Rule Iran 2025 2027 - Sep 22 0:00 0 S
+Rule Iran 2028 2029 - Mar 21 0:00 1:00 D
+Rule Iran 2028 2029 - Sep 21 0:00 0 S
+Rule Iran 2030 2031 - Mar 22 0:00 1:00 D
+Rule Iran 2030 2031 - Sep 22 0:00 0 S
+Rule Iran 2032 2033 - Mar 21 0:00 1:00 D
+Rule Iran 2032 2033 - Sep 21 0:00 0 S
+Rule Iran 2034 2035 - Mar 22 0:00 1:00 D
+Rule Iran 2034 2035 - Sep 22 0:00 0 S
+Rule Iran 2036 2037 - Mar 21 0:00 1:00 D
+Rule Iran 2036 2037 - Sep 21 0:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Tehran 3:25:44 - LMT 1916
+ 3:25:44 - TMT 1946 # Tehran Mean Time
+ 3:30 - IRST 1977 Nov
+ 4:00 Iran IR%sT 1979
+ 3:30 Iran IR%sT
+
+
+# Iraq
+#
+# From Jonathan Lennox (2000-06-12):
+# An article in this week's Economist ("Inside the Saddam-free zone", p. 50 in
+# the U.S. edition) on the Iraqi Kurds contains a paragraph:
+# "The three northern provinces ... switched their clocks this spring and
+# are an hour ahead of Baghdad."
+#
+# But Rives McDow (2000-06-18) quotes a contact in Iraqi-Kurdistan as follows:
+# In the past, some Kurdish nationalists, as a protest to the Iraqi
+# Government, did not adhere to daylight saving time. They referred
+# to daylight saving as Saddam time. But, as of today, the time zone
+# in Iraqi-Kurdistan is on standard time with Baghdad, Iraq.
+#
+# So we'll ignore the Economist's claim.
+
+# From Steffen Thorsen (2008-03-10):
+# The cabinet in Iraq abolished DST last week, according to the following
+# news sources (in Arabic):
+# <a href="http://www.aljeeran.net/wesima_articles/news-20080305-98602.html">
+# http://www.aljeeran.net/wesima_articles/news-20080305-98602.html
+# </a>
+# <a href="http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10">
+# http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10
+# </a>
+#
+# We have published a short article in English about the change:
+# <a href="http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html">
+# http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html
+# </a>
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Iraq 1982 only - May 1 0:00 1:00 D
+Rule Iraq 1982 1984 - Oct 1 0:00 0 S
+Rule Iraq 1983 only - Mar 31 0:00 1:00 D
+Rule Iraq 1984 1985 - Apr 1 0:00 1:00 D
+Rule Iraq 1985 1990 - Sep lastSun 1:00s 0 S
+Rule Iraq 1986 1990 - Mar lastSun 1:00s 1:00 D
+# IATA SSIM (1991/1996) says Apr 1 12:01am UTC; guess the `:01' is a typo.
+# Shanks & Pottenger say Iraq did not observe DST 1992/1997; ignore this.
+#
+Rule Iraq 1991 2007 - Apr 1 3:00s 1:00 D
+Rule Iraq 1991 2007 - Oct 1 3:00s 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Baghdad 2:57:40 - LMT 1890
+ 2:57:36 - BMT 1918 # Baghdad Mean Time?
+ 3:00 - AST 1982 May
+ 3:00 Iraq A%sT
+
+
+###############################################################################
+
+# Israel
+
+# From Ephraim Silverberg (2001-01-11):
+#
+# I coined "IST/IDT" circa 1988. Until then there were three
+# different abbreviations in use:
+#
+# JST Jerusalem Standard Time [Danny Braniss, Hebrew University]
+# IZT Israel Zonal (sic) Time [Prof. Haim Papo, Technion]
+# EEST Eastern Europe Standard Time [used by almost everyone else]
+#
+# Since timezones should be called by country and not capital cities,
+# I ruled out JST. As Israel is in Asia Minor and not Eastern Europe,
+# EEST was equally unacceptable. Since "zonal" was not compatible with
+# any other timezone abbreviation, I felt that 'IST' was the way to go
+# and, indeed, it has received almost universal acceptance in timezone
+# settings in Israeli computers.
+#
+# In any case, I am happy to share timezone abbreviations with India,
+# high on my favorite-country list (and not only because my wife's
+# family is from India).
+
+# From Shanks & Pottenger:
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Zion 1940 only - Jun 1 0:00 1:00 D
+Rule Zion 1942 1944 - Nov 1 0:00 0 S
+Rule Zion 1943 only - Apr 1 2:00 1:00 D
+Rule Zion 1944 only - Apr 1 0:00 1:00 D
+Rule Zion 1945 only - Apr 16 0:00 1:00 D
+Rule Zion 1945 only - Nov 1 2:00 0 S
+Rule Zion 1946 only - Apr 16 2:00 1:00 D
+Rule Zion 1946 only - Nov 1 0:00 0 S
+Rule Zion 1948 only - May 23 0:00 2:00 DD
+Rule Zion 1948 only - Sep 1 0:00 1:00 D
+Rule Zion 1948 1949 - Nov 1 2:00 0 S
+Rule Zion 1949 only - May 1 0:00 1:00 D
+Rule Zion 1950 only - Apr 16 0:00 1:00 D
+Rule Zion 1950 only - Sep 15 3:00 0 S
+Rule Zion 1951 only - Apr 1 0:00 1:00 D
+Rule Zion 1951 only - Nov 11 3:00 0 S
+Rule Zion 1952 only - Apr 20 2:00 1:00 D
+Rule Zion 1952 only - Oct 19 3:00 0 S
+Rule Zion 1953 only - Apr 12 2:00 1:00 D
+Rule Zion 1953 only - Sep 13 3:00 0 S
+Rule Zion 1954 only - Jun 13 0:00 1:00 D
+Rule Zion 1954 only - Sep 12 0:00 0 S
+Rule Zion 1955 only - Jun 11 2:00 1:00 D
+Rule Zion 1955 only - Sep 11 0:00 0 S
+Rule Zion 1956 only - Jun 3 0:00 1:00 D
+Rule Zion 1956 only - Sep 30 3:00 0 S
+Rule Zion 1957 only - Apr 29 2:00 1:00 D
+Rule Zion 1957 only - Sep 22 0:00 0 S
+Rule Zion 1974 only - Jul 7 0:00 1:00 D
+Rule Zion 1974 only - Oct 13 0:00 0 S
+Rule Zion 1975 only - Apr 20 0:00 1:00 D
+Rule Zion 1975 only - Aug 31 0:00 0 S
+Rule Zion 1985 only - Apr 14 0:00 1:00 D
+Rule Zion 1985 only - Sep 15 0:00 0 S
+Rule Zion 1986 only - May 18 0:00 1:00 D
+Rule Zion 1986 only - Sep 7 0:00 0 S
+Rule Zion 1987 only - Apr 15 0:00 1:00 D
+Rule Zion 1987 only - Sep 13 0:00 0 S
+Rule Zion 1988 only - Apr 9 0:00 1:00 D
+Rule Zion 1988 only - Sep 3 0:00 0 S
+
+# From Ephraim Silverberg
+# (1997-03-04, 1998-03-16, 1998-12-28, 2000-01-17, 2000-07-25, 2004-12-22,
+# and 2005-02-17):
+
+# According to the Office of the Secretary General of the Ministry of
+# Interior, there is NO set rule for Daylight-Savings/Standard time changes.
+# One thing is entrenched in law, however: that there must be at least 150
+# days of daylight savings time annually. From 1993-1998, the change to
+# daylight savings time was on a Friday morning from midnight IST to
+# 1 a.m IDT; up until 1998, the change back to standard time was on a
+# Saturday night from midnight daylight savings time to 11 p.m. standard
+# time. 1996 is an exception to this rule where the change back to standard
+# time took place on Sunday night instead of Saturday night to avoid
+# conflicts with the Jewish New Year. In 1999, the change to
+# daylight savings time was still on a Friday morning but from
+# 2 a.m. IST to 3 a.m. IDT; furthermore, the change back to standard time
+# was also on a Friday morning from 2 a.m. IDT to 1 a.m. IST for
+# 1999 only. In the year 2000, the change to daylight savings time was
+# similar to 1999, but although the change back will be on a Friday, it
+# will take place from 1 a.m. IDT to midnight IST. Starting in 2001, all
+# changes to/from will take place at 1 a.m. old time, but now there is no
+# rule as to what day of the week it will take place in as the start date
+# (except in 2003) is the night after the Passover Seder (i.e. the eve
+# of the 16th of Nisan in the lunar Hebrew calendar) and the end date
+# (except in 2002) is three nights before Yom Kippur [Day of Atonement]
+# (the eve of the 7th of Tishrei in the lunar Hebrew calendar).
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Zion 1989 only - Apr 30 0:00 1:00 D
+Rule Zion 1989 only - Sep 3 0:00 0 S
+Rule Zion 1990 only - Mar 25 0:00 1:00 D
+Rule Zion 1990 only - Aug 26 0:00 0 S
+Rule Zion 1991 only - Mar 24 0:00 1:00 D
+Rule Zion 1991 only - Sep 1 0:00 0 S
+Rule Zion 1992 only - Mar 29 0:00 1:00 D
+Rule Zion 1992 only - Sep 6 0:00 0 S
+Rule Zion 1993 only - Apr 2 0:00 1:00 D
+Rule Zion 1993 only - Sep 5 0:00 0 S
+
+# The dates for 1994-1995 were obtained from Office of the Spokeswoman for the
+# Ministry of Interior, Jerusalem, Israel. The spokeswoman can be reached by
+# calling the office directly at 972-2-6701447 or 972-2-6701448.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Zion 1994 only - Apr 1 0:00 1:00 D
+Rule Zion 1994 only - Aug 28 0:00 0 S
+Rule Zion 1995 only - Mar 31 0:00 1:00 D
+Rule Zion 1995 only - Sep 3 0:00 0 S
+
+# The dates for 1996 were determined by the Minister of Interior of the
+# time, Haim Ramon. The official announcement regarding 1996-1998
+# (with the dates for 1997-1998 no longer being relevant) can be viewed at:
+#
+# ftp://ftp.cs.huji.ac.il/pub/tz/announcements/1996-1998.ramon.ps.gz
+#
+# The dates for 1997-1998 were altered by his successor, Rabbi Eli Suissa.
+#
+# The official announcements for the years 1997-1999 can be viewed at:
+#
+# ftp://ftp.cs.huji.ac.il/pub/tz/announcements/YYYY.ps.gz
+#
+# where YYYY is the relevant year.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Zion 1996 only - Mar 15 0:00 1:00 D
+Rule Zion 1996 only - Sep 16 0:00 0 S
+Rule Zion 1997 only - Mar 21 0:00 1:00 D
+Rule Zion 1997 only - Sep 14 0:00 0 S
+Rule Zion 1998 only - Mar 20 0:00 1:00 D
+Rule Zion 1998 only - Sep 6 0:00 0 S
+Rule Zion 1999 only - Apr 2 2:00 1:00 D
+Rule Zion 1999 only - Sep 3 2:00 0 S
+
+# The Knesset Interior Committee has changed the dates for 2000 for
+# the third time in just over a year and have set new dates for the
+# years 2001-2004 as well.
+#
+# The official announcement for the start date of 2000 can be viewed at:
+#
+# ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2000-start.ps.gz
+#
+# The official announcement for the end date of 2000 and the dates
+# for the years 2001-2004 can be viewed at:
+#
+# ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2000-2004.ps.gz
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Zion 2000 only - Apr 14 2:00 1:00 D
+Rule Zion 2000 only - Oct 6 1:00 0 S
+Rule Zion 2001 only - Apr 9 1:00 1:00 D
+Rule Zion 2001 only - Sep 24 1:00 0 S
+Rule Zion 2002 only - Mar 29 1:00 1:00 D
+Rule Zion 2002 only - Oct 7 1:00 0 S
+Rule Zion 2003 only - Mar 28 1:00 1:00 D
+Rule Zion 2003 only - Oct 3 1:00 0 S
+Rule Zion 2004 only - Apr 7 1:00 1:00 D
+Rule Zion 2004 only - Sep 22 1:00 0 S
+
+# The proposed law agreed upon by the Knesset Interior Committee on
+# 2005-02-14 is that, for 2005 and beyond, DST starts at 02:00 the
+# last Friday before April 2nd (i.e. the last Friday in March or April
+# 1st itself if it falls on a Friday) and ends at 02:00 on the Saturday
+# night _before_ the fast of Yom Kippur.
+#
+# Those who can read Hebrew can view the announcement at:
+#
+# ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2005+beyond.ps
+
+# From Paul Eggert (2005-02-22):
+# I used Ephraim Silverberg's dst-israel.el program
+# <ftp://ftp.cs.huji.ac.il/pub/tz/software/dst-israel.el> (2005-02-20)
+# along with Ed Reingold's cal-hebrew in GNU Emacs 21.4,
+# to generate the transitions in this list.
+# (I replaced "lastFri" with "Fri>=26" by hand.)
+# The spring transitions below all correspond to the following Rule:
+#
+# Rule Zion 2005 max - Mar Fri>=26 2:00 1:00 D
+#
+# but older zic implementations (e.g., Solaris 8) do not support
+# "Fri>=26" to mean April 1 in years like 2005, so for now we list the
+# springtime transitions explicitly.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Zion 2005 only - Apr 1 2:00 1:00 D
+Rule Zion 2005 only - Oct 9 2:00 0 S
+Rule Zion 2006 2010 - Mar Fri>=26 2:00 1:00 D
+Rule Zion 2006 only - Oct 1 2:00 0 S
+Rule Zion 2007 only - Sep 16 2:00 0 S
+Rule Zion 2008 only - Oct 5 2:00 0 S
+Rule Zion 2009 only - Sep 27 2:00 0 S
+Rule Zion 2010 only - Sep 12 2:00 0 S
+Rule Zion 2011 only - Apr 1 2:00 1:00 D
+Rule Zion 2011 only - Oct 2 2:00 0 S
+Rule Zion 2012 2015 - Mar Fri>=26 2:00 1:00 D
+Rule Zion 2012 only - Sep 23 2:00 0 S
+Rule Zion 2013 only - Sep 8 2:00 0 S
+Rule Zion 2014 only - Sep 28 2:00 0 S
+Rule Zion 2015 only - Sep 20 2:00 0 S
+Rule Zion 2016 only - Apr 1 2:00 1:00 D
+Rule Zion 2016 only - Oct 9 2:00 0 S
+Rule Zion 2017 2021 - Mar Fri>=26 2:00 1:00 D
+Rule Zion 2017 only - Sep 24 2:00 0 S
+Rule Zion 2018 only - Sep 16 2:00 0 S
+Rule Zion 2019 only - Oct 6 2:00 0 S
+Rule Zion 2020 only - Sep 27 2:00 0 S
+Rule Zion 2021 only - Sep 12 2:00 0 S
+Rule Zion 2022 only - Apr 1 2:00 1:00 D
+Rule Zion 2022 only - Oct 2 2:00 0 S
+Rule Zion 2023 2032 - Mar Fri>=26 2:00 1:00 D
+Rule Zion 2023 only - Sep 24 2:00 0 S
+Rule Zion 2024 only - Oct 6 2:00 0 S
+Rule Zion 2025 only - Sep 28 2:00 0 S
+Rule Zion 2026 only - Sep 20 2:00 0 S
+Rule Zion 2027 only - Oct 10 2:00 0 S
+Rule Zion 2028 only - Sep 24 2:00 0 S
+Rule Zion 2029 only - Sep 16 2:00 0 S
+Rule Zion 2030 only - Oct 6 2:00 0 S
+Rule Zion 2031 only - Sep 21 2:00 0 S
+Rule Zion 2032 only - Sep 12 2:00 0 S
+Rule Zion 2033 only - Apr 1 2:00 1:00 D
+Rule Zion 2033 only - Oct 2 2:00 0 S
+Rule Zion 2034 2037 - Mar Fri>=26 2:00 1:00 D
+Rule Zion 2034 only - Sep 17 2:00 0 S
+Rule Zion 2035 only - Oct 7 2:00 0 S
+Rule Zion 2036 only - Sep 28 2:00 0 S
+Rule Zion 2037 only - Sep 13 2:00 0 S
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Jerusalem 2:20:56 - LMT 1880
+ 2:20:40 - JMT 1918 # Jerusalem Mean Time?
+ 2:00 Zion I%sT
+
+
+
+###############################################################################
+
+# Japan
+
+# `9:00' and `JST' is from Guy Harris.
+
+# From Paul Eggert (1995-03-06):
+# Today's _Asahi Evening News_ (page 4) reports that Japan had
+# daylight saving between 1948 and 1951, but ``the system was discontinued
+# because the public believed it would lead to longer working hours.''
+
+# From Mayumi Negishi in the 2005-08-10 Japan Times
+# <http://www.japantimes.co.jp/cgi-bin/getarticle.pl5?nn20050810f2.htm>:
+# Occupation authorities imposed daylight-saving time on Japan on
+# [1948-05-01].... But lack of prior debate and the execution of
+# daylight-saving time just three days after the bill was passed generated
+# deep hatred of the concept.... The Diet unceremoniously passed a bill to
+# dump the unpopular system in October 1951, less than a month after the San
+# Francisco Peace Treaty was signed. (A government poll in 1951 showed 53%
+# of the Japanese wanted to scrap daylight-saving time, as opposed to 30% who
+# wanted to keep it.)
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger write that DST in Japan during those years was as follows:
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Japan 1948 only - May Sun>=1 2:00 1:00 D
+Rule Japan 1948 1951 - Sep Sat>=8 2:00 0 S
+Rule Japan 1949 only - Apr Sun>=1 2:00 1:00 D
+Rule Japan 1950 1951 - May Sun>=1 2:00 1:00 D
+# but the only locations using it (for birth certificates, presumably, since
+# their audience is astrologers) were US military bases. For now, assume
+# that for most purposes daylight-saving time was observed; otherwise, what
+# would have been the point of the 1951 poll?
+
+# From Hideyuki Suzuki (1998-11-09):
+# 'Tokyo' usually stands for the former location of Tokyo Astronomical
+# Observatory: E 139 44' 40".90 (9h 18m 58s.727), N 35 39' 16".0.
+# This data is from 'Rika Nenpyou (Chronological Scientific Tables) 1996'
+# edited by National Astronomical Observatory of Japan....
+# JST (Japan Standard Time) has been used since 1888-01-01 00:00 (JST).
+# The law is enacted on 1886-07-07.
+
+# From Hideyuki Suzuki (1998-11-16):
+# The ordinance No. 51 (1886) established "standard time" in Japan,
+# which stands for the time on E 135 degree.
+# In the ordinance No. 167 (1895), "standard time" was renamed to "central
+# standard time". And the same ordinance also established "western standard
+# time", which stands for the time on E 120 degree.... But "western standard
+# time" was abolished in the ordinance No. 529 (1937). In the ordinance No.
+# 167, there is no mention regarding for what place western standard time is
+# standard....
+#
+# I wrote "ordinance" above, but I don't know how to translate.
+# In Japanese it's "chokurei", which means ordinance from emperor.
+
+# Shanks & Pottenger claim JST in use since 1896, and that a few
+# places (e.g. Ishigaki) use +0800; go with Suzuki. Guess that all
+# ordinances took effect on Jan 1.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Tokyo 9:18:59 - LMT 1887 Dec 31 15:00u
+ 9:00 - JST 1896
+ 9:00 - CJT 1938
+ 9:00 Japan J%sT
+# Since 1938, all Japanese possessions have been like Asia/Tokyo.
+
+# Jordan
+#
+# From <a href="http://star.arabia.com/990701/JO9.html">
+# Jordan Week (1999-07-01) </a> via Steffen Thorsen (1999-09-09):
+# Clocks in Jordan were forwarded one hour on Wednesday at midnight,
+# in accordance with the government's decision to implement summer time
+# all year round.
+#
+# From <a href="http://star.arabia.com/990930/JO9.html">
+# Jordan Week (1999-09-30) </a> via Steffen Thorsen (1999-11-09):
+# Winter time starts today Thursday, 30 September. Clocks will be turned back
+# by one hour. This is the latest government decision and it's final!
+# The decision was taken because of the increase in working hours in
+# government's departments from six to seven hours.
+#
+# From Paul Eggert (2005-11-22):
+# Starting 2003 transitions are from Steffen Thorsen's web site timeanddate.com.
+#
+# From Steffen Thorsen (2005-11-23):
+# For Jordan I have received multiple independent user reports every year
+# about DST end dates, as the end-rule is different every year.
+#
+# From Steffen Thorsen (2006-10-01), after a heads-up from Hilal Malawi:
+# http://www.petranews.gov.jo/nepras/2006/Sep/05/4000.htm
+# "Jordan will switch to winter time on Friday, October 27".
+#
+
+# From Phil Pizzey (2009-04-02):
+# ...I think I may have spotted an error in the timezone data for
+# Jordan.
+# The current (2009d) asia file shows Jordan going to daylight
+# saving
+# time on the last Thursday in March.
+#
+# Rule Jordan 2000 max - Mar lastThu 0:00s 1:00 S
+#
+# However timeanddate.com, which I usually find reliable, shows Jordan
+# going to daylight saving time on the last Friday in March since 2002.
+# Please see
+# <a href="http://www.timeanddate.com/worldclock/timezone.html?n=11">
+# http://www.timeanddate.com/worldclock/timezone.html?n=11
+# </a>
+
+# From Steffen Thorsen (2009-04-02):
+# This single one might be good enough, (2009-03-24, Arabic):
+# <a href="http://petra.gov.jo/Artical.aspx?Lng=2&Section=8&Artical=95279">
+# http://petra.gov.jo/Artical.aspx?Lng=2&Section=8&Artical=95279
+# </a>
+#
+# Google's translation:
+#
+# > The Council of Ministers decided in 2002 to adopt the principle of timely
+# > submission of the summer at 60 minutes as of midnight on the last Thursday
+# > of the month of March of each year.
+#
+# So - this means the midnight between Thursday and Friday since 2002.
+
+# From Arthur David Olson (2009-04-06):
+# We still have Jordan switching to DST on Thursdays in 2000 and 2001.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Jordan 1973 only - Jun 6 0:00 1:00 S
+Rule Jordan 1973 1975 - Oct 1 0:00 0 -
+Rule Jordan 1974 1977 - May 1 0:00 1:00 S
+Rule Jordan 1976 only - Nov 1 0:00 0 -
+Rule Jordan 1977 only - Oct 1 0:00 0 -
+Rule Jordan 1978 only - Apr 30 0:00 1:00 S
+Rule Jordan 1978 only - Sep 30 0:00 0 -
+Rule Jordan 1985 only - Apr 1 0:00 1:00 S
+Rule Jordan 1985 only - Oct 1 0:00 0 -
+Rule Jordan 1986 1988 - Apr Fri>=1 0:00 1:00 S
+Rule Jordan 1986 1990 - Oct Fri>=1 0:00 0 -
+Rule Jordan 1989 only - May 8 0:00 1:00 S
+Rule Jordan 1990 only - Apr 27 0:00 1:00 S
+Rule Jordan 1991 only - Apr 17 0:00 1:00 S
+Rule Jordan 1991 only - Sep 27 0:00 0 -
+Rule Jordan 1992 only - Apr 10 0:00 1:00 S
+Rule Jordan 1992 1993 - Oct Fri>=1 0:00 0 -
+Rule Jordan 1993 1998 - Apr Fri>=1 0:00 1:00 S
+Rule Jordan 1994 only - Sep Fri>=15 0:00 0 -
+Rule Jordan 1995 1998 - Sep Fri>=15 0:00s 0 -
+Rule Jordan 1999 only - Jul 1 0:00s 1:00 S
+Rule Jordan 1999 2002 - Sep lastFri 0:00s 0 -
+Rule Jordan 2000 2001 - Mar lastThu 0:00s 1:00 S
+Rule Jordan 2002 max - Mar lastThu 24:00 1:00 S
+Rule Jordan 2003 only - Oct 24 0:00s 0 -
+Rule Jordan 2004 only - Oct 15 0:00s 0 -
+Rule Jordan 2005 only - Sep lastFri 0:00s 0 -
+Rule Jordan 2006 max - Oct lastFri 0:00s 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Amman 2:23:44 - LMT 1931
+ 2:00 Jordan EE%sT
+
+
+# Kazakhstan
+
+# From Paul Eggert (1996-11-22):
+# Andrew Evtichov (1996-04-13) writes that Kazakhstan
+# stayed in sync with Moscow after 1990, and that Aqtobe (formerly Aktyubinsk)
+# and Aqtau (formerly Shevchenko) are the largest cities in their zones.
+# Guess that Aqtau and Aqtobe diverged in 1995, since that's the first time
+# IATA SSIM mentions a third time zone in Kazakhstan.
+
+# From Paul Eggert (2006-03-22):
+# German Iofis, ELSI, Almaty (2001-10-09) reports that Kazakhstan uses
+# RussiaAsia rules, instead of switching at 00:00 as the IATA has it.
+# Go with Shanks & Pottenger, who have them always using RussiaAsia rules.
+# Also go with the following claims of Shanks & Pottenger:
+#
+# - Kazakhstan did not observe DST in 1991.
+# - Qyzylorda switched from +5:00 to +6:00 on 1992-01-19 02:00.
+# - Oral switched from +5:00 to +4:00 in spring 1989.
+
+# <a href="http://www.kazsociety.org.uk/news/2005/03/30.htm">
+# From Kazakhstan Embassy's News Bulletin #11 (2005-03-21):
+# </a>
+# The Government of Kazakhstan passed a resolution March 15 abolishing
+# daylight saving time citing lack of economic benefits and health
+# complications coupled with a decrease in productivity.
+#
+# From Branislav Kojic (in Astana) via Gwillim Law (2005-06-28):
+# ... what happened was that the former Kazakhstan Eastern time zone
+# was "blended" with the Central zone. Therefore, Kazakhstan now has
+# two time zones, and difference between them is one hour. The zone
+# closer to UTC is the former Western zone (probably still called the
+# same), encompassing four provinces in the west: Aqtobe, Atyrau,
+# Mangghystau, and West Kazakhstan. The other zone encompasses
+# everything else.... I guess that would make Kazakhstan time zones
+# de jure UTC+5 and UTC+6 respectively.
+
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+#
+# Almaty (formerly Alma-Ata), representing most locations in Kazakhstan
+Zone Asia/Almaty 5:07:48 - LMT 1924 May 2 # or Alma-Ata
+ 5:00 - ALMT 1930 Jun 21 # Alma-Ata Time
+ 6:00 RussiaAsia ALM%sT 1991
+ 6:00 - ALMT 1992
+ 6:00 RussiaAsia ALM%sT 2005 Mar 15
+ 6:00 - ALMT
+# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.)
+Zone Asia/Qyzylorda 4:21:52 - LMT 1924 May 2
+ 4:00 - KIZT 1930 Jun 21 # Kizilorda Time
+ 5:00 - KIZT 1981 Apr 1
+ 5:00 1:00 KIZST 1981 Oct 1
+ 6:00 - KIZT 1982 Apr 1
+ 5:00 RussiaAsia KIZ%sT 1991
+ 5:00 - KIZT 1991 Dec 16 # independence
+ 5:00 - QYZT 1992 Jan 19 2:00
+ 6:00 RussiaAsia QYZ%sT 2005 Mar 15
+ 6:00 - QYZT
+# Aqtobe (aka Aktobe, formerly Akt'ubinsk)
+Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2
+ 4:00 - AKTT 1930 Jun 21 # Aktyubinsk Time
+ 5:00 - AKTT 1981 Apr 1
+ 5:00 1:00 AKTST 1981 Oct 1
+ 6:00 - AKTT 1982 Apr 1
+ 5:00 RussiaAsia AKT%sT 1991
+ 5:00 - AKTT 1991 Dec 16 # independence
+ 5:00 RussiaAsia AQT%sT 2005 Mar 15 # Aqtobe Time
+ 5:00 - AQTT
+# Mangghystau
+# Aqtau was not founded until 1963, but it represents an inhabited region,
+# so include time stamps before 1963.
+Zone Asia/Aqtau 3:21:04 - LMT 1924 May 2
+ 4:00 - FORT 1930 Jun 21 # Fort Shevchenko T
+ 5:00 - FORT 1963
+ 5:00 - SHET 1981 Oct 1 # Shevchenko Time
+ 6:00 - SHET 1982 Apr 1
+ 5:00 RussiaAsia SHE%sT 1991
+ 5:00 - SHET 1991 Dec 16 # independence
+ 5:00 RussiaAsia AQT%sT 1995 Mar lastSun 2:00 # Aqtau Time
+ 4:00 RussiaAsia AQT%sT 2005 Mar 15
+ 5:00 - AQTT
+# West Kazakhstan
+Zone Asia/Oral 3:25:24 - LMT 1924 May 2 # or Ural'sk
+ 4:00 - URAT 1930 Jun 21 # Ural'sk time
+ 5:00 - URAT 1981 Apr 1
+ 5:00 1:00 URAST 1981 Oct 1
+ 6:00 - URAT 1982 Apr 1
+ 5:00 RussiaAsia URA%sT 1989 Mar 26 2:00
+ 4:00 RussiaAsia URA%sT 1991
+ 4:00 - URAT 1991 Dec 16 # independence
+ 4:00 RussiaAsia ORA%sT 2005 Mar 15 # Oral Time
+ 5:00 - ORAT
+
+# Kyrgyzstan (Kirgizstan)
+# Transitions through 1991 are from Shanks & Pottenger.
+
+# From Paul Eggert (2005-08-15):
+# According to an article dated today in the Kyrgyzstan Development Gateway
+# <http://eng.gateway.kg/cgi-bin/page.pl?id=1&story_name=doc9979.shtml>
+# Kyrgyzstan is canceling the daylight saving time system. I take the article
+# to mean that they will leave their clocks at 6 hours ahead of UTC.
+# From Malik Abdugaliev (2005-09-21):
+# Our government cancels daylight saving time 6th of August 2005.
+# From 2005-08-12 our GMT-offset is +6, w/o any daylight saving.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Kyrgyz 1992 1996 - Apr Sun>=7 0:00s 1:00 S
+Rule Kyrgyz 1992 1996 - Sep lastSun 0:00 0 -
+Rule Kyrgyz 1997 2005 - Mar lastSun 2:30 1:00 S
+Rule Kyrgyz 1997 2004 - Oct lastSun 2:30 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Bishkek 4:58:24 - LMT 1924 May 2
+ 5:00 - FRUT 1930 Jun 21 # Frunze Time
+ 6:00 RussiaAsia FRU%sT 1991 Mar 31 2:00s
+ 5:00 1:00 FRUST 1991 Aug 31 2:00 # independence
+ 5:00 Kyrgyz KG%sT 2005 Aug 12 # Kyrgyzstan Time
+ 6:00 - KGT
+
+###############################################################################
+
+# Korea (North and South)
+
+# From Annie I. Bang (2006-07-10) in
+# <http://www.koreaherald.co.kr/SITE/data/html_dir/2006/07/10/200607100012.asp>:
+# The Ministry of Commerce, Industry and Energy has already
+# commissioned a research project [to reintroduce DST] and has said
+# the system may begin as early as 2008.... Korea ran a daylight
+# saving program from 1949-61 but stopped it during the 1950-53 Korean War.
+
+# From Shanks & Pottenger:
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule ROK 1960 only - May 15 0:00 1:00 D
+Rule ROK 1960 only - Sep 13 0:00 0 S
+Rule ROK 1987 1988 - May Sun>=8 0:00 1:00 D
+Rule ROK 1987 1988 - Oct Sun>=8 0:00 0 S
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Seoul 8:27:52 - LMT 1890
+ 8:30 - KST 1904 Dec
+ 9:00 - KST 1928
+ 8:30 - KST 1932
+ 9:00 - KST 1954 Mar 21
+ 8:00 ROK K%sT 1961 Aug 10
+ 8:30 - KST 1968 Oct
+ 9:00 ROK K%sT
+Zone Asia/Pyongyang 8:23:00 - LMT 1890
+ 8:30 - KST 1904 Dec
+ 9:00 - KST 1928
+ 8:30 - KST 1932
+ 9:00 - KST 1954 Mar 21
+ 8:00 - KST 1961 Aug 10
+ 9:00 - KST
+
+###############################################################################
+
+# Kuwait
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+# From the Arab Times (2007-03-14):
+# The Civil Service Commission (CSC) has approved a proposal forwarded
+# by MP Ahmad Baqer on implementing the daylight saving time (DST) in
+# Kuwait starting from April until the end of Sept this year, reports Al-Anba.
+# <http://www.arabtimesonline.com/arabtimes/kuwait/Viewdet.asp?ID=9950>.
+# From Paul Eggert (2007-03-29):
+# We don't know the details, or whether the approval means it'll happen,
+# so for now we assume no DST.
+Zone Asia/Kuwait 3:11:56 - LMT 1950
+ 3:00 - AST
+
+# Laos
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Vientiane 6:50:24 - LMT 1906 Jun 9 # or Viangchan
+ 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT?
+ 7:00 - ICT 1912 May
+ 8:00 - ICT 1931 May
+ 7:00 - ICT
+
+# Lebanon
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Lebanon 1920 only - Mar 28 0:00 1:00 S
+Rule Lebanon 1920 only - Oct 25 0:00 0 -
+Rule Lebanon 1921 only - Apr 3 0:00 1:00 S
+Rule Lebanon 1921 only - Oct 3 0:00 0 -
+Rule Lebanon 1922 only - Mar 26 0:00 1:00 S
+Rule Lebanon 1922 only - Oct 8 0:00 0 -
+Rule Lebanon 1923 only - Apr 22 0:00 1:00 S
+Rule Lebanon 1923 only - Sep 16 0:00 0 -
+Rule Lebanon 1957 1961 - May 1 0:00 1:00 S
+Rule Lebanon 1957 1961 - Oct 1 0:00 0 -
+Rule Lebanon 1972 only - Jun 22 0:00 1:00 S
+Rule Lebanon 1972 1977 - Oct 1 0:00 0 -
+Rule Lebanon 1973 1977 - May 1 0:00 1:00 S
+Rule Lebanon 1978 only - Apr 30 0:00 1:00 S
+Rule Lebanon 1978 only - Sep 30 0:00 0 -
+Rule Lebanon 1984 1987 - May 1 0:00 1:00 S
+Rule Lebanon 1984 1991 - Oct 16 0:00 0 -
+Rule Lebanon 1988 only - Jun 1 0:00 1:00 S
+Rule Lebanon 1989 only - May 10 0:00 1:00 S
+Rule Lebanon 1990 1992 - May 1 0:00 1:00 S
+Rule Lebanon 1992 only - Oct 4 0:00 0 -
+Rule Lebanon 1993 max - Mar lastSun 0:00 1:00 S
+Rule Lebanon 1993 1998 - Sep lastSun 0:00 0 -
+Rule Lebanon 1999 max - Oct lastSun 0:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Beirut 2:22:00 - LMT 1880
+ 2:00 Lebanon EE%sT
+
+# Malaysia
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule NBorneo 1935 1941 - Sep 14 0:00 0:20 TS # one-Third Summer
+Rule NBorneo 1935 1941 - Dec 14 0:00 0 -
+#
+# peninsular Malaysia
+# The data here are taken from Mok Ly Yng (2003-10-30)
+# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Kuala_Lumpur 6:46:46 - LMT 1901 Jan 1
+ 6:55:25 - SMT 1905 Jun 1 # Singapore M.T.
+ 7:00 - MALT 1933 Jan 1 # Malaya Time
+ 7:00 0:20 MALST 1936 Jan 1
+ 7:20 - MALT 1941 Sep 1
+ 7:30 - MALT 1942 Feb 16
+ 9:00 - JST 1945 Sep 12
+ 7:30 - MALT 1982 Jan 1
+ 8:00 - MYT # Malaysia Time
+# Sabah & Sarawak
+# From Paul Eggert (2006-03-22):
+# The data here are mostly from Shanks & Pottenger, but the 1942, 1945 and 1982
+# transition dates are from Mok Ly Yng.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Kuching 7:21:20 - LMT 1926 Mar
+ 7:30 - BORT 1933 # Borneo Time
+ 8:00 NBorneo BOR%sT 1942 Feb 16
+ 9:00 - JST 1945 Sep 12
+ 8:00 - BORT 1982 Jan 1
+ 8:00 - MYT
+
+# Maldives
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Indian/Maldives 4:54:00 - LMT 1880 # Male
+ 4:54:00 - MMT 1960 # Male Mean Time
+ 5:00 - MVT # Maldives Time
+
+# Mongolia
+
+# Shanks & Pottenger say that Mongolia has three time zones, but
+# usno1995 and the CIA map Standard Time Zones of the World (2005-03)
+# both say that it has just one.
+
+# From Oscar van Vlijmen (1999-12-11):
+# <a href="http://www.mongoliatourism.gov.mn/general.htm">
+# General Information Mongolia
+# </a> (1999-09)
+# "Time: Mongolia has two time zones. Three westernmost provinces of
+# Bayan-Ulgii, Uvs, and Hovd are one hour earlier than the capital city, and
+# the rest of the country follows the Ulaanbaatar time, which is UTC/GMT plus
+# eight hours."
+
+# From Rives McDow (1999-12-13):
+# Mongolia discontinued the use of daylight savings time in 1999; 1998
+# being the last year it was implemented. The dates of implementation I am
+# unsure of, but most probably it was similar to Russia, except for the time
+# of implementation may have been different....
+# Some maps in the past have indicated that there was an additional time
+# zone in the eastern part of Mongolia, including the provinces of Dornod,
+# Suhbaatar, and possibly Khentij.
+
+# From Paul Eggert (1999-12-15):
+# Naming and spelling is tricky in Mongolia.
+# We'll use Hovd (also spelled Chovd and Khovd) to represent the west zone;
+# the capital of the Hovd province is sometimes called Hovd, sometimes Dund-Us,
+# and sometimes Jirgalanta (with variant spellings), but the name Hovd
+# is good enough for our purposes.
+
+# From Rives McDow (2001-05-13):
+# In addition to Mongolia starting daylight savings as reported earlier
+# (adopted DST on 2001-04-27 02:00 local time, ending 2001-09-28),
+# there are three time zones.
+#
+# Provinces [at 7:00]: Bayan-ulgii, Uvs, Khovd, Zavkhan, Govi-Altai
+# Provinces [at 8:00]: Khovsgol, Bulgan, Arkhangai, Khentii, Tov,
+# Bayankhongor, Ovorkhangai, Dundgovi, Dornogovi, Omnogovi
+# Provinces [at 9:00]: Dornod, Sukhbaatar
+#
+# [The province of Selenge is omitted from the above lists.]
+
+# From Ganbold Ts., Ulaanbaatar (2004-04-17):
+# Daylight saving occurs at 02:00 local time last Saturday of March.
+# It will change back to normal at 02:00 local time last Saturday of
+# September.... As I remember this rule was changed in 2001.
+#
+# From Paul Eggert (2004-04-17):
+# For now, assume Rives McDow's informant got confused about Friday vs
+# Saturday, and that his 2001 dates should have 1 added to them.
+
+# From Paul Eggert (2005-07-26):
+# We have wildly conflicting information about Mongolia's time zones.
+# Bill Bonnet (2005-05-19) reports that the US Embassy in Ulaanbaatar says
+# there is only one time zone and that DST is observed, citing Microsoft
+# Windows XP as the source. Risto Nykanen (2005-05-16) reports that
+# travelmongolia.org says there are two time zones (UTC+7, UTC+8) with no DST.
+# Oscar van Vlijmen (2005-05-20) reports that the Mongolian Embassy in
+# Washington, DC says there are two time zones, with DST observed.
+# He also found
+# <http://ubpost.mongolnews.mn/index.php?subaction=showcomments&id=1111634894&archive=&start_from=&ucat=1&>
+# which also says that there is DST, and which has a comment by "Toddius"
+# (2005-03-31 06:05 +0700) saying "Mongolia actually has 3.5 time zones.
+# The West (OLGII) is +7 GMT, most of the country is ULAT is +8 GMT
+# and some Eastern provinces are +9 GMT but Sukhbaatar Aimag is SUHK +8.5 GMT.
+# The SUKH timezone is new this year, it is one of the few things the
+# parliament passed during the tumultuous winter session."
+# For now, let's ignore this information, until we have more confirmation.
+
+# From Ganbold Ts. (2007-02-26):
+# Parliament of Mongolia has just changed the daylight-saving rule in February.
+# They decided not to adopt daylight-saving time....
+# http://www.mongolnews.mn/index.php?module=unuudur&sec=view&id=15742
+
+# From Deborah Goldsmith (2008-03-30):
+# We received a bug report claiming that the tz database UTC offset for
+# Asia/Choibalsan (GMT+09:00) is incorrect, and that it should be GMT
+# +08:00 instead. Different sources appear to disagree with the tz
+# database on this, e.g.:
+#
+# <a href="http://www.timeanddate.com/worldclock/city.html?n=1026">
+# http://www.timeanddate.com/worldclock/city.html?n=1026
+# </a>
+# <a href="http://www.worldtimeserver.com/current_time_in_MN.aspx">
+# http://www.worldtimeserver.com/current_time_in_MN.aspx
+# </a>
+#
+# both say GMT+08:00.
+
+# From Steffen Thorsen (2008-03-31):
+# eznis airways, which operates several domestic flights, has a flight
+# schedule here:
+# <a href="http://www.eznis.com/Container.jsp?id=112">
+# http://www.eznis.com/Container.jsp?id=112
+# </a>
+# (click the English flag for English)
+#
+# There it appears that flights between Choibalsan and Ulaanbatar arrive
+# about 1:35 - 1:50 hours later in local clock time, no matter the
+# direction, while Ulaanbaatar-Khvod takes 2 hours in the Eastern
+# direction and 3:35 back, which indicates that Ulaanbatar and Khvod are
+# in different time zones (like we know about), while Choibalsan and
+# Ulaanbatar are in the same time zone (correction needed).
+
+# From Arthur David Olson (2008-05-19):
+# Assume that Choibalsan is indeed offset by 8:00.
+# XXX--in the absence of better information, assume that transition
+# was at the start of 2008-03-31 (the day of Steffen Thorsen's report);
+# this is almost surely wrong.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Mongol 1983 1984 - Apr 1 0:00 1:00 S
+Rule Mongol 1983 only - Oct 1 0:00 0 -
+# Shanks & Pottenger and IATA SSIM say 1990s switches occurred at 00:00,
+# but McDow says the 2001 switches occurred at 02:00. Also, IATA SSIM
+# (1996-09) says 1996-10-25. Go with Shanks & Pottenger through 1998.
+#
+# Shanks & Pottenger say that the Sept. 1984 through Sept. 1990 switches
+# in Choibalsan (more precisely, in Dornod and Sukhbaatar) took place
+# at 02:00 standard time, not at 00:00 local time as in the rest of
+# the country. That would be odd, and possibly is a result of their
+# correction of 02:00 (in the previous edition) not being done correctly
+# in the latest edition; so ignore it for now.
+
+Rule Mongol 1985 1998 - Mar lastSun 0:00 1:00 S
+Rule Mongol 1984 1998 - Sep lastSun 0:00 0 -
+# IATA SSIM (1999-09) says Mongolia no longer observes DST.
+Rule Mongol 2001 only - Apr lastSat 2:00 1:00 S
+Rule Mongol 2001 2006 - Sep lastSat 2:00 0 -
+Rule Mongol 2002 2006 - Mar lastSat 2:00 1:00 S
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+# Hovd, a.k.a. Chovd, Dund-Us, Dzhargalant, Khovd, Jirgalanta
+Zone Asia/Hovd 6:06:36 - LMT 1905 Aug
+ 6:00 - HOVT 1978 # Hovd Time
+ 7:00 Mongol HOV%sT
+# Ulaanbaatar, a.k.a. Ulan Bataar, Ulan Bator, Urga
+Zone Asia/Ulaanbaatar 7:07:32 - LMT 1905 Aug
+ 7:00 - ULAT 1978 # Ulaanbaatar Time
+ 8:00 Mongol ULA%sT
+# Choibalsan, a.k.a. Bajan Tuemen, Bajan Tumen, Chojbalsan,
+# Choybalsan, Sanbejse, Tchoibalsan
+Zone Asia/Choibalsan 7:38:00 - LMT 1905 Aug
+ 7:00 - ULAT 1978
+ 8:00 - ULAT 1983 Apr
+ 9:00 Mongol CHO%sT 2008 Mar 31 # Choibalsan Time
+ 8:00 Mongol CHO%sT
+
+# Nepal
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Kathmandu 5:41:16 - LMT 1920
+ 5:30 - IST 1986
+ 5:45 - NPT # Nepal Time
+
+# Oman
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Muscat 3:54:20 - LMT 1920
+ 4:00 - GST
+
+# Pakistan
+
+# From Rives McDow (2002-03-13):
+# I have been advised that Pakistan has decided to adopt dst on a
+# TRIAL basis for one year, starting 00:01 local time on April 7, 2002
+# and ending at 00:01 local time October 6, 2002. This is what I was
+# told, but I believe that the actual time of change may be 00:00; the
+# 00:01 was to make it clear which day it was on.
+
+# From Paul Eggert (2002-03-15):
+# Jesper Norgaard found this URL:
+# http://www.pak.gov.pk/public/news/app/app06_dec.htm
+# (dated 2001-12-06) which says that the Cabinet adopted a scheme "to
+# advance the clocks by one hour on the night between the first
+# Saturday and Sunday of April and revert to the original position on
+# 15th October each year". This agrees with McDow's 04-07 at 00:00,
+# but disagrees about the October transition, and makes it sound like
+# it's not on a trial basis. Also, the "between the first Saturday
+# and Sunday of April" phrase, if taken literally, means that the
+# transition takes place at 00:00 on the first Sunday on or after 04-02.
+
+# From Paul Eggert (2003-02-09):
+# DAWN <http://www.dawn.com/2002/10/06/top13.htm> reported on 2002-10-05
+# that 2002 DST ended that day at midnight. Go with McDow for now.
+
+# From Steffen Thorsen (2003-03-14):
+# According to http://www.dawn.com/2003/03/07/top15.htm
+# there will be no DST in Pakistan this year:
+#
+# ISLAMABAD, March 6: Information and Media Development Minister Sheikh
+# Rashid Ahmed on Thursday said the cabinet had reversed a previous
+# decision to advance clocks by one hour in summer and put them back by
+# one hour in winter with the aim of saving light hours and energy.
+#
+# The minister told a news conference that the experiment had rather
+# shown 8 per cent higher consumption of electricity.
+
+# From Alex Krivenyshev (2008-05-15):
+#
+# Here is an article that Pakistan plan to introduce Daylight Saving Time
+# on June 1, 2008 for 3 months.
+#
+# "... The federal cabinet on Wednesday announced a new conservation plan to help
+# reduce load shedding by approving the closure of commercial centres at 9pm and
+# moving clocks forward by one hour for the next three months.
+# ...."
+#
+# <a href="http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html">
+# http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html
+# </a>
+# OR
+# <a href="http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4">
+# http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4
+# </a>
+
+# From Arthur David Olson (2008-05-19):
+# XXX--midnight transitions is a guess; 2008 only is a guess.
+
+# From Alexander Krivenyshev (2008-08-28):
+# Pakistan government has decided to keep the watches one-hour advanced
+# for another 2 months--plan to return to Standard Time on October 31
+# instead of August 31.
+#
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan02.html">
+# http://www.worldtimezone.com/dst_news/dst_news_pakistan02.html
+# </a>
+# OR
+# <a href="http://dailymailnews.com/200808/28/news/dmbrn03.html">
+# http://dailymailnews.com/200808/28/news/dmbrn03.html
+# </a>
+
+# From Alexander Krivenyshev (2009-04-08):
+# Based on previous media reports that "... proposed plan to
+# advance clocks by one hour from May 1 will cause disturbance
+# to the working schedules rather than bringing discipline in
+# official working."
+# <a href="http://www.thenews.com.pk/daily_detail.asp?id=171280">
+# http://www.thenews.com.pk/daily_detail.asp?id=171280
+# </a>
+#
+# recent news that instead of May 2009 - Pakistan plan to
+# introduce DST from April 15, 2009
+#
+# FYI: Associated Press Of Pakistan
+# April 08, 2009
+# Cabinet okays proposal to advance clocks by one hour from April 15
+# <a href="http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=73043&Itemid=1">
+# http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=73043&Itemid=1
+# </a>
+#
+# or
+#
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan05.html">
+# http://www.worldtimezone.com/dst_news/dst_news_pakistan05.html
+# </a>
+#
+# ....
+# The Federal Cabinet on Wednesday approved the proposal to
+# advance clocks in the country by one hour from April 15 to
+# conserve energy"
+
+# From Steffen Thorsen (2009-09-17):
+# "The News International," Pakistan reports that: "The Federal
+# Government has decided to restore the previous time by moving the
+# clocks backward by one hour from October 1. A formal announcement to
+# this effect will be made after the Prime Minister grants approval in
+# this regard."
+# <a href="http://www.thenews.com.pk/updates.asp?id=87168">
+# http://www.thenews.com.pk/updates.asp?id=87168
+# </a>
+
+# From Alexander Krivenyshev (2009-09-28):
+# According to Associated Press Of Pakistan, it is confirmed that
+# Pakistan clocks across the country would be turned back by an hour from October
+# 1, 2009.
+#
+# "Clocks to go back one hour from 1 Oct"
+# <a href="http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=86715&Itemid=2">
+# http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=86715&Itemid=2
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan07.htm">
+# http://www.worldtimezone.com/dst_news/dst_news_pakistan07.htm
+# </a>
+
+# From Steffen Thorsen (2009-09-29):
+# Alexander Krivenyshev wrote:
+# > According to Associated Press Of Pakistan, it is confirmed that
+# > Pakistan clocks across the country would be turned back by an hour from October
+# > 1, 2009.
+#
+# Now they seem to have changed their mind, November 1 is the new date:
+# <a href="http://www.thenews.com.pk/top_story_detail.asp?Id=24742">
+# http://www.thenews.com.pk/top_story_detail.asp?Id=24742
+# </a>
+# "The country's clocks will be reversed by one hour on November 1.
+# Officials of Federal Ministry for Interior told this to Geo News on
+# Monday."
+#
+# And more importantly, it seems that these dates will be kept every year:
+# "It has now been decided that clocks will be wound forward by one hour
+# on April 15 and reversed by an hour on November 1 every year without
+# obtaining prior approval, the officials added."
+#
+# We have confirmed this year's end date with both with the Ministry of
+# Water and Power and the Pakistan Electric Power Company:
+# <a href="http://www.timeanddate.com/news/time/pakistan-ends-dst09.html">
+# http://www.timeanddate.com/news/time/pakistan-ends-dst09.html
+# </a>
+
+# From Christoph Goehre (2009-10-01):
+# [T]he German Consulate General in Karachi reported me today that Pakistan
+# will go back to standard time on 1st of November.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Pakistan 2002 only - Apr Sun>=2 0:01 1:00 S
+Rule Pakistan 2002 only - Oct Sun>=2 0:01 0 -
+Rule Pakistan 2008 only - Jun 1 0:00 1:00 S
+Rule Pakistan 2008 only - Nov 1 0:00 0 -
+Rule Pakistan 2009 max - Apr 15 0:00 1:00 S
+Rule Pakistan 2009 max - Nov 1 0:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Karachi 4:28:12 - LMT 1907
+ 5:30 - IST 1942 Sep
+ 5:30 1:00 IST 1945 Oct 15
+ 5:30 - IST 1951 Sep 30
+ 5:00 - KART 1971 Mar 26 # Karachi Time
+ 5:00 Pakistan PK%sT # Pakistan Time
+
+# Palestine
+
+# From Amos Shapir (1998-02-15):
+#
+# From 1917 until 1948-05-15, all of Palestine, including the parts now
+# known as the Gaza Strip and the West Bank, was under British rule.
+# Therefore the rules given for Israel for that period, apply there too...
+#
+# The Gaza Strip was under Egyptian rule between 1948-05-15 until 1967-06-05
+# (except a short occupation by Israel from 1956-11 till 1957-03, but no
+# time zone was affected then). It was never formally annexed to Egypt,
+# though.
+#
+# The rest of Palestine was under Jordanian rule at that time, formally
+# annexed in 1950 as the West Bank (and the word "Trans" was dropped from
+# the country's previous name of "the Hashemite Kingdom of the
+# Trans-Jordan"). So the rules for Jordan for that time apply. Major
+# towns in that area are Nablus (Shchem), El-Halil (Hebron), Ramallah, and
+# East Jerusalem.
+#
+# Both areas were occupied by Israel in June 1967, but not annexed (except
+# for East Jerusalem). They were on Israel time since then; there might
+# have been a Military Governor's order about time zones, but I'm not aware
+# of any (such orders may have been issued semi-annually whenever summer
+# time was in effect, but maybe the legal aspect of time was just neglected).
+#
+# The Palestinian Authority was established in 1993, and got hold of most
+# towns in the West Bank and Gaza by 1995. I know that in order to
+# demonstrate...independence, they have been switching to
+# summer time and back on a different schedule than Israel's, but I don't
+# know when this was started, or what algorithm is used (most likely the
+# Jordanian one).
+#
+# To summarize, the table should probably look something like that:
+#
+# Area \ when | 1918-1947 | 1948-1967 | 1967-1995 | 1996-
+# ------------+-----------+-----------+-----------+-----------
+# Israel | Zion | Zion | Zion | Zion
+# West bank | Zion | Jordan | Zion | Jordan
+# Gaza | Zion | Egypt | Zion | Jordan
+#
+# I guess more info may be available from the PA's web page (if/when they
+# have one).
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger write that Gaza did not observe DST until 1957, but go
+# with Shapir and assume that it observed DST from 1940 through 1947,
+# and that it used Jordanian rules starting in 1996.
+# We don't yet need a separate entry for the West Bank, since
+# the only differences between it and Gaza that we know about
+# occurred before our cutoff date of 1970.
+# However, as we get more information, we may need to add entries
+# for parts of the West Bank as they transitioned from Israel's rules
+# to Palestine's rules. If you have more info about this, please
+# send it to tz@elsie.nci.nih.gov for incorporation into future editions.
+
+# From IINS News Service - Israel - 1998-03-23 10:38:07 Israel time,
+# forwarded by Ephraim Silverberg:
+#
+# Despite the fact that Israel changed over to daylight savings time
+# last week, the PLO Authority (PA) has decided not to turn its clocks
+# one-hour forward at this time. As a sign of independence from Israeli rule,
+# the PA has decided to implement DST in April.
+
+# From Paul Eggert (1999-09-20):
+# Daoud Kuttab writes in
+# <a href="http://www.jpost.com/com/Archive/22.Apr.1999/Opinion/Article-2.html">
+# Holiday havoc
+# </a> (Jerusalem Post, 1999-04-22) that
+# the Palestinian National Authority changed to DST on 1999-04-15.
+# I vaguely recall that they switch back in October (sorry, forgot the source).
+# For now, let's assume that the spring switch was at 24:00,
+# and that they switch at 0:00 on the 3rd Fridays of April and October.
+
+# From Paul Eggert (2005-11-22):
+# Starting 2004 transitions are from Steffen Thorsen's web site timeanddate.com.
+
+# From Steffen Thorsen (2005-11-23):
+# A user from Gaza reported that Gaza made the change early because of
+# the Ramadan. Next year Ramadan will be even earlier, so I think
+# there is a good chance next year's end date will be around two weeks
+# earlier--the same goes for Jordan.
+
+# From Steffen Thorsen (2006-08-17):
+# I was informed by a user in Bethlehem that in Bethlehem it started the
+# same day as Israel, and after checking with other users in the area, I
+# was informed that they started DST one day after Israel. I was not
+# able to find any authoritative sources at the time, nor details if
+# Gaza changed as well, but presumed Gaza to follow the same rules as
+# the West Bank.
+
+# From Steffen Thorsen (2006-09-26):
+# according to the Palestine News Network (2006-09-19):
+# http://english.pnn.ps/index.php?option=com_content&task=view&id=596&Itemid=5
+# > The Council of Ministers announced that this year its winter schedule
+# > will begin early, as of midnight Thursday. It is also time to turn
+# > back the clocks for winter. Friday will begin an hour late this week.
+# I guess it is likely that next year's date will be moved as well,
+# because of the Ramadan.
+
+# From Jesper Norgaard Welen (2007-09-18):
+# According to Steffen Thorsen's web site the Gaza Strip and the rest of the
+# Palestinian territories left DST early on 13.th. of September at 2:00.
+
+# From Paul Eggert (2007-09-20):
+# My understanding is that Gaza and the West Bank disagree even over when
+# the weekend is (Thursday+Friday versus Friday+Saturday), so I'd be a bit
+# surprised if they agreed about DST. But for now, assume they agree.
+# For lack of better information, predict that future changes will be
+# the 2nd Thursday of September at 02:00.
+
+# From Alexander Krivenyshev (2008-08-28):
+# Here is an article, that Mideast running on different clocks at Ramadan.
+#
+# Gaza Strip (as Egypt) ended DST at midnight Thursday (Aug 28, 2008), while
+# the West Bank will end Daylight Saving Time at midnight Sunday (Aug 31, 2008).
+#
+# <a href="http://www.guardian.co.uk/world/feedarticle/7759001">
+# http://www.guardian.co.uk/world/feedarticle/7759001
+# </a>
+# <a href="http://www.abcnews.go.com/International/wireStory?id=5676087">
+# http://www.abcnews.go.com/International/wireStory?id=5676087
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_gazastrip01.html">
+# http://www.worldtimezone.com/dst_news/dst_news_gazastrip01.html
+# </a>
+
+# From Alexander Krivenyshev (2009-03-26):
+# According to the Palestine News Network (arabic.pnn.ps), Palestinian
+# government decided to start Daylight Time on Thursday night March
+# 26 and continue until the night of 27 September 2009.
+#
+# (in Arabic)
+# <a href="http://arabic.pnn.ps/index.php?option=com_content&task=view&id=50850">
+# http://arabic.pnn.ps/index.php?option=com_content&task=view&id=50850
+# </a>
+#
+# or
+# (English translation)
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_westbank01.html">
+# http://www.worldtimezone.com/dst_news/dst_news_westbank01.html
+# </a>
+
+# From Steffen Thorsen (2009-08-31):
+# Palestine's Council of Ministers announced that they will revert back to
+# winter time on Friday, 2009-09-04.
+#
+# One news source:
+# <a href="http://www.safa.ps/ara/?action=showdetail&seid=4158">
+# http://www.safa.ps/ara/?action=showdetail&seid=4158
+# </a>
+# (Palestinian press agency, Arabic),
+# Google translate: "Decided that the Palestinian government in Ramallah
+# headed by Salam Fayyad, the start of work in time for the winter of
+# 2009, starting on Friday approved the fourth delay Sept. clock sixty
+# minutes per hour as of Friday morning."
+#
+# We are not sure if Gaza will do the same, last year they had a different
+# end date, we will keep this page updated:
+# <a href="http://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html">
+# http://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html
+# </a>
+
+# From Alexander Krivenyshev (2009-09-02):
+# Seems that Gaza Strip will go back to Winter Time same date as West Bank.
+#
+# According to Palestinian Ministry Of Interior, West Bank and Gaza Strip plan
+# to change time back to Standard time on September 4, 2009.
+#
+# "Winter time unite the West Bank and Gaza"
+# (from Palestinian National Authority):
+# <a href="http://www.moi.gov.ps/en/?page=633167343250594025&nid=11505
+# http://www.moi.gov.ps/en/?page=633167343250594025&nid=11505
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_gazastrip02.html>
+# http://www.worldtimezone.com/dst_news/dst_news_gazastrip02.html
+# </a>
+
+# The rules for Egypt are stolen from the `africa' file.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule EgyptAsia 1957 only - May 10 0:00 1:00 S
+Rule EgyptAsia 1957 1958 - Oct 1 0:00 0 -
+Rule EgyptAsia 1958 only - May 1 0:00 1:00 S
+Rule EgyptAsia 1959 1967 - May 1 1:00 1:00 S
+Rule EgyptAsia 1959 1965 - Sep 30 3:00 0 -
+Rule EgyptAsia 1966 only - Oct 1 3:00 0 -
+
+Rule Palestine 1999 2005 - Apr Fri>=15 0:00 1:00 S
+Rule Palestine 1999 2003 - Oct Fri>=15 0:00 0 -
+Rule Palestine 2004 only - Oct 1 1:00 0 -
+Rule Palestine 2005 only - Oct 4 2:00 0 -
+Rule Palestine 2006 2008 - Apr 1 0:00 1:00 S
+Rule Palestine 2006 only - Sep 22 0:00 0 -
+Rule Palestine 2007 only - Sep Thu>=8 2:00 0 -
+Rule Palestine 2008 only - Aug lastFri 2:00 0 -
+Rule Palestine 2009 max - Mar lastFri 0:00 1:00 S
+Rule Palestine 2009 max - Sep Fri>=1 2:00 0 -
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Gaza 2:17:52 - LMT 1900 Oct
+ 2:00 Zion EET 1948 May 15
+ 2:00 EgyptAsia EE%sT 1967 Jun 5
+ 2:00 Zion I%sT 1996
+ 2:00 Jordan EE%sT 1999
+ 2:00 Palestine EE%sT
+
+# Paracel Is
+# no information
+
+# Philippines
+# On 1844-08-16, Narciso Claveria, governor-general of the
+# Philippines, issued a proclamation announcing that 1844-12-30 was to
+# be immediately followed by 1845-01-01. Robert H. van Gent has a
+# transcript of the decree in <http://www.phys.uu.nl/~vgent/idl/idl.htm>.
+# The rest of the data are from Shanks & Pottenger.
+
+# From Paul Eggert (2006-04-25):
+# Tomorrow's Manila Standard reports that the Philippines Department of
+# Trade and Industry is considering adopting DST this June when the
+# rainy season begins. See
+# <http://www.manilastandardtoday.com/?page=politics02_april26_2006>.
+# For now, we'll ignore this, since it's not definite and we lack details.
+#
+# From Jesper Norgaard Welen (2006-04-26):
+# ... claims that Philippines had DST last time in 1990:
+# http://story.philippinetimes.com/p.x/ct/9/id/145be20cc6b121c0/cid/3e5bbccc730d258c/
+# [a story dated 2006-04-25 by Cris Larano of Dow Jones Newswires,
+# but no details]
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Phil 1936 only - Nov 1 0:00 1:00 S
+Rule Phil 1937 only - Feb 1 0:00 0 -
+Rule Phil 1954 only - Apr 12 0:00 1:00 S
+Rule Phil 1954 only - Jul 1 0:00 0 -
+Rule Phil 1978 only - Mar 22 0:00 1:00 S
+Rule Phil 1978 only - Sep 21 0:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Manila -15:56:00 - LMT 1844 Dec 31
+ 8:04:00 - LMT 1899 May 11
+ 8:00 Phil PH%sT 1942 May
+ 9:00 - JST 1944 Nov
+ 8:00 Phil PH%sT
+
+# Qatar
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha
+ 4:00 - GST 1972 Jun
+ 3:00 - AST
+
+# Saudi Arabia
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Riyadh 3:06:52 - LMT 1950
+ 3:00 - AST
+
+# Singapore
+# The data here are taken from Mok Ly Yng (2003-10-30)
+# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Singapore 6:55:25 - LMT 1901 Jan 1
+ 6:55:25 - SMT 1905 Jun 1 # Singapore M.T.
+ 7:00 - MALT 1933 Jan 1 # Malaya Time
+ 7:00 0:20 MALST 1936 Jan 1
+ 7:20 - MALT 1941 Sep 1
+ 7:30 - MALT 1942 Feb 16
+ 9:00 - JST 1945 Sep 12
+ 7:30 - MALT 1965 Aug 9 # independence
+ 7:30 - SGT 1982 Jan 1 # Singapore Time
+ 8:00 - SGT
+
+# Spratly Is
+# no information
+
+# Sri Lanka
+# From Paul Eggert (1996-09-03):
+# "Sri Lanka advances clock by an hour to avoid blackout"
+# (www.virtual-pc.com/lankaweb/news/items/240596-2.html, 1996-05-24,
+# no longer available as of 1999-08-17)
+# reported ``the country's standard time will be put forward by one hour at
+# midnight Friday (1830 GMT) `in the light of the present power crisis'.''
+#
+# From Dharmasiri Senanayake, Sri Lanka Media Minister (1996-10-24), as quoted
+# by Shamindra in
+# <a href="news:54rka5$m5h@mtinsc01-mgt.ops.worldnet.att.net">
+# Daily News - Hot News Section (1996-10-26)
+# </a>:
+# With effect from 12.30 a.m. on 26th October 1996
+# Sri Lanka will be six (06) hours ahead of GMT.
+
+# From Jesper Norgaard Welen (2006-04-14), quoting Sri Lanka News Online
+# <http://news.sinhalaya.com/wmview.php?ArtID=11002> (2006-04-13):
+# 0030 hrs on April 15, 2006 (midnight of April 14, 2006 +30 minutes)
+# at present, become 2400 hours of April 14, 2006 (midnight of April 14, 2006).
+
+# From Peter Apps and Ranga Sirila of Reuters (2006-04-12) in:
+# <http://today.reuters.co.uk/news/newsArticle.aspx?type=scienceNews&storyID=2006-04-12T172228Z_01_COL295762_RTRIDST_0_SCIENCE-SRILANKA-TIME-DC.XML>
+# [The Tamil Tigers] never accepted the original 1996 time change and simply
+# kept their clocks set five and a half hours ahead of Greenwich Mean
+# Time (GMT), in line with neighbor India.
+# From Paul Eggert (2006-04-18):
+# People who live in regions under Tamil control can use [TZ='Asia/Kolkata'],
+# as that zone has agreed with the Tamil areas since our cutoff date of 1970.
+
+# From K Sethu (2006-04-25):
+# I think the abbreviation LKT originated from the world of computers at
+# the time of or subsequent to the time zone changes by SL Government
+# twice in 1996 and probably SL Government or its standardization
+# agencies never declared an abbreviation as a national standard.
+#
+# I recollect before the recent change the government annoucemments
+# mentioning it as simply changing Sri Lanka Standard Time or Sri Lanka
+# Time and no mention was made about the abbreviation.
+#
+# If we look at Sri Lanka Department of Government's "Official News
+# Website of Sri Lanka" ... http://www.news.lk/ we can see that they
+# use SLT as abbreviation in time stamp at the beginning of each news
+# item....
+#
+# Within Sri Lanka I think LKT is well known among computer users and
+# adminsitrators. In my opinion SLT may not be a good choice because the
+# nation's largest telcom / internet operator Sri Lanka Telcom is well
+# known by that abbreviation - simply as SLT (there IP domains are
+# slt.lk and sltnet.lk).
+#
+# But if indeed our government has adopted SLT as standard abbreviation
+# (that we have not known so far) then it is better that it be used for
+# all computers.
+
+# From Paul Eggert (2006-04-25):
+# One possibility is that we wait for a bit for the dust to settle down
+# and then see what people actually say in practice.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Colombo 5:19:24 - LMT 1880
+ 5:19:32 - MMT 1906 # Moratuwa Mean Time
+ 5:30 - IST 1942 Jan 5
+ 5:30 0:30 IHST 1942 Sep
+ 5:30 1:00 IST 1945 Oct 16 2:00
+ 5:30 - IST 1996 May 25 0:00
+ 6:30 - LKT 1996 Oct 26 0:30
+ 6:00 - LKT 2006 Apr 15 0:30
+ 5:30 - IST
+
+# Syria
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Syria 1920 1923 - Apr Sun>=15 2:00 1:00 S
+Rule Syria 1920 1923 - Oct Sun>=1 2:00 0 -
+Rule Syria 1962 only - Apr 29 2:00 1:00 S
+Rule Syria 1962 only - Oct 1 2:00 0 -
+Rule Syria 1963 1965 - May 1 2:00 1:00 S
+Rule Syria 1963 only - Sep 30 2:00 0 -
+Rule Syria 1964 only - Oct 1 2:00 0 -
+Rule Syria 1965 only - Sep 30 2:00 0 -
+Rule Syria 1966 only - Apr 24 2:00 1:00 S
+Rule Syria 1966 1976 - Oct 1 2:00 0 -
+Rule Syria 1967 1978 - May 1 2:00 1:00 S
+Rule Syria 1977 1978 - Sep 1 2:00 0 -
+Rule Syria 1983 1984 - Apr 9 2:00 1:00 S
+Rule Syria 1983 1984 - Oct 1 2:00 0 -
+Rule Syria 1986 only - Feb 16 2:00 1:00 S
+Rule Syria 1986 only - Oct 9 2:00 0 -
+Rule Syria 1987 only - Mar 1 2:00 1:00 S
+Rule Syria 1987 1988 - Oct 31 2:00 0 -
+Rule Syria 1988 only - Mar 15 2:00 1:00 S
+Rule Syria 1989 only - Mar 31 2:00 1:00 S
+Rule Syria 1989 only - Oct 1 2:00 0 -
+Rule Syria 1990 only - Apr 1 2:00 1:00 S
+Rule Syria 1990 only - Sep 30 2:00 0 -
+Rule Syria 1991 only - Apr 1 0:00 1:00 S
+Rule Syria 1991 1992 - Oct 1 0:00 0 -
+Rule Syria 1992 only - Apr 8 0:00 1:00 S
+Rule Syria 1993 only - Mar 26 0:00 1:00 S
+Rule Syria 1993 only - Sep 25 0:00 0 -
+# IATA SSIM (1998-02) says 1998-04-02;
+# (1998-09) says 1999-03-29 and 1999-09-29; (1999-02) says 1999-04-02,
+# 2000-04-02, and 2001-04-02; (1999-09) says 2000-03-31 and 2001-03-31;
+# (2006) says 2006-03-31 and 2006-09-22;
+# for now ignore all these claims and go with Shanks & Pottenger,
+# except for the 2006-09-22 claim (which seems right for Ramadan).
+Rule Syria 1994 1996 - Apr 1 0:00 1:00 S
+Rule Syria 1994 2005 - Oct 1 0:00 0 -
+Rule Syria 1997 1998 - Mar lastMon 0:00 1:00 S
+Rule Syria 1999 2006 - Apr 1 0:00 1:00 S
+# From Stephen Colebourne (2006-09-18):
+# According to IATA data, Syria will change DST on 21st September [21:00 UTC]
+# this year [only].... This is probably related to Ramadan, like Egypt.
+Rule Syria 2006 only - Sep 22 0:00 0 -
+# From Paul Eggert (2007-03-29):
+# Today the AP reported "Syria will switch to summertime at midnight Thursday."
+# http://www.iht.com/articles/ap/2007/03/29/africa/ME-GEN-Syria-Time-Change.php
+Rule Syria 2007 only - Mar lastFri 0:00 1:00 S
+# From Jesper Norgard (2007-10-27):
+# The sister center ICARDA of my work CIMMYT is confirming that Syria DST will
+# not take place 1.st November at 0:00 o'clock but 1.st November at 24:00 or
+# rather Midnight between Thursday and Friday. This does make more sence than
+# having it between Wednesday and Thursday (two workdays in Syria) since the
+# weekend in Syria is not Saturday and Sunday, but Friday and Saturday. So now
+# it is implemented at midnight of the last workday before weekend...
+#
+# From Steffen Thorsen (2007-10-27):
+# Jesper Norgaard Welen wrote:
+#
+# > "Winter local time in Syria will be observed at midnight of Thursday 1
+# > November 2007, and the clock will be put back 1 hour."
+#
+# I found confirmation on this in this gov.sy-article (Arabic):
+# http://wehda.alwehda.gov.sy/_print_veiw.asp?FileName=12521710520070926111247
+#
+# which using Google's translate tools says:
+# Council of Ministers also approved the commencement of work on
+# identifying the winter time as of Friday, 2/11/2007 where the 60th
+# minute delay at midnight Thursday 1/11/2007.
+Rule Syria 2007 only - Nov Fri>=1 0:00 0 -
+
+# From Stephen Colebourne (2008-03-17):
+# For everyone's info, I saw an IATA time zone change for [Syria] for
+# this month (March 2008) in the last day or so...This is the data IATA
+# are now using:
+# Country Time Standard --- DST Start --- --- DST End --- DST
+# Name Zone Variation Time Date Time Date
+# Variation
+# Syrian Arab
+# Republic SY +0200 2200 03APR08 2100 30SEP08 +0300
+# 2200 02APR09 2100 30SEP09 +0300
+# 2200 01APR10 2100 30SEP10 +0300
+
+# From Arthur David Olson (2008-03-17):
+# Here's a link to English-language coverage by the Syrian Arab News
+# Agency (SANA)...
+# <a href="http://www.sana.sy/eng/21/2008/03/11/165173.htm">
+# http://www.sana.sy/eng/21/2008/03/11/165173.htm
+# </a>...which reads (in part) "The Cabinet approved the suggestion of the
+# Ministry of Electricity to begin daylight savings time on Friday April
+# 4th, advancing clocks one hour ahead on midnight of Thursday April 3rd."
+# Since Syria is two hours east of UTC, the 2200 and 2100 transition times
+# shown above match up with midnight in Syria.
+
+# From Arthur David Olson (2008-03-18):
+# My buest guess at a Syrian rule is "the Friday nearest April 1";
+# coding that involves either using a "Mar Fri>=29" construct that old time zone
+# compilers can't handle or having multiple Rules (a la Israel).
+# For now, use "Apr Fri>=1", and go with IATA on a uniform Sep 30 end.
+
+# From Steffen Thorsen (2008-10-07):
+# Syria has now officially decided to end DST on 2008-11-01 this year,
+# according to the following article in the Syrian Arab News Agency (SANA).
+#
+# The article is in Arabic, and seems to tell that they will go back to
+# winter time on 2008-11-01 at 00:00 local daylight time (delaying/setting
+# clocks back 60 minutes).
+#
+# <a href="http://sana.sy/ara/2/2008/10/07/195459.htm">
+# http://sana.sy/ara/2/2008/10/07/195459.htm
+# </a>
+
+# From Steffen Thorsen (2009-03-19):
+# Syria will start DST on 2009-03-27 00:00 this year according to many sources,
+# two examples:
+#
+# <a href="http://www.sana.sy/eng/21/2009/03/17/217563.htm">
+# http://www.sana.sy/eng/21/2009/03/17/217563.htm
+# </a>
+# (English, Syrian Arab News # Agency)
+# <a href="http://thawra.alwehda.gov.sy/_View_news2.asp?FileName=94459258720090318012209">
+# http://thawra.alwehda.gov.sy/_View_news2.asp?FileName=94459258720090318012209
+# </a>
+# (Arabic, gov-site)
+#
+# We have not found any sources saying anything about when DST ends this year.
+#
+# Our summary
+# <a href="http://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html">
+# http://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html
+# </a>
+
+# From Steffen Thorsen (2009-10-27):
+# The Syrian Arab News Network on 2009-09-29 reported that Syria will
+# revert back to winter (standard) time on midnight between Thursday
+# 2009-10-29 and Friday 2009-10-30:
+# <a href="http://www.sana.sy/ara/2/2009/09/29/247012.htm">
+# http://www.sana.sy/ara/2/2009/09/29/247012.htm (Arabic)
+# </a>
+
+# From Arthur David Olson (2009-10-28):
+# We'll see if future DST switching times turn out to be end of the last
+# Thursday of the month or the start of the last Friday of the month or
+# something else. For now, use the start of the last Friday.
+
+Rule Syria 2008 only - Apr Fri>=1 0:00 1:00 S
+Rule Syria 2008 only - Nov 1 0:00 0 -
+Rule Syria 2009 max - Mar lastFri 0:00 1:00 S
+Rule Syria 2009 max - Oct lastFri 0:00 0 -
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq
+ 2:00 Syria EE%sT
+
+# Tajikistan
+# From Shanks & Pottenger.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Dushanbe 4:35:12 - LMT 1924 May 2
+ 5:00 - DUST 1930 Jun 21 # Dushanbe Time
+ 6:00 RussiaAsia DUS%sT 1991 Mar 31 2:00s
+ 5:00 1:00 DUSST 1991 Sep 9 2:00s
+ 5:00 - TJT # Tajikistan Time
+
+# Thailand
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Bangkok 6:42:04 - LMT 1880
+ 6:42:04 - BMT 1920 Apr # Bangkok Mean Time
+ 7:00 - ICT
+
+# Turkmenistan
+# From Shanks & Pottenger.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Ashgabat 3:53:32 - LMT 1924 May 2 # or Ashkhabad
+ 4:00 - ASHT 1930 Jun 21 # Ashkhabad Time
+ 5:00 RussiaAsia ASH%sT 1991 Mar 31 2:00
+ 4:00 RussiaAsia ASH%sT 1991 Oct 27 # independence
+ 4:00 RussiaAsia TM%sT 1992 Jan 19 2:00
+ 5:00 - TMT
+
+# United Arab Emirates
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Dubai 3:41:12 - LMT 1920
+ 4:00 - GST
+
+# Uzbekistan
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Samarkand 4:27:12 - LMT 1924 May 2
+ 4:00 - SAMT 1930 Jun 21 # Samarkand Time
+ 5:00 - SAMT 1981 Apr 1
+ 5:00 1:00 SAMST 1981 Oct 1
+ 6:00 - TAST 1982 Apr 1 # Tashkent Time
+ 5:00 RussiaAsia SAM%sT 1991 Sep 1 # independence
+ 5:00 RussiaAsia UZ%sT 1992
+ 5:00 - UZT
+Zone Asia/Tashkent 4:37:12 - LMT 1924 May 2
+ 5:00 - TAST 1930 Jun 21 # Tashkent Time
+ 6:00 RussiaAsia TAS%sT 1991 Mar 31 2:00
+ 5:00 RussiaAsia TAS%sT 1991 Sep 1 # independence
+ 5:00 RussiaAsia UZ%sT 1992
+ 5:00 - UZT
+
+# Vietnam
+
+# From Arthur David Olson (2008-03-18):
+# The English-language name of Vietnam's most populous city is "Ho Chi Min City";
+# we use Ho_Chi_Minh below to avoid a name of more than 14 characters.
+
+# From Shanks & Pottenger:
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Ho_Chi_Minh 7:06:40 - LMT 1906 Jun 9
+ 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT?
+ 7:00 - ICT 1912 May
+ 8:00 - ICT 1931 May
+ 7:00 - ICT
+
+# Yemen
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Asia/Aden 3:00:48 - LMT 1950
+ 3:00 - AST
diff --git a/tools/zoneinfo/tzdata2009s/australasia b/tools/zoneinfo/tzdata2009s/australasia
new file mode 100644
index 0000000..3812390
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/australasia
@@ -0,0 +1,1560 @@
+# <pre>
+# @(#)australasia 8.15
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# This file also includes Pacific islands.
+
+# Notes are at the end of this file
+
+###############################################################################
+
+# Australia
+
+# Please see the notes below for the controversy about "EST" versus "AEST" etc.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Aus 1917 only - Jan 1 0:01 1:00 -
+Rule Aus 1917 only - Mar 25 2:00 0 -
+Rule Aus 1942 only - Jan 1 2:00 1:00 -
+Rule Aus 1942 only - Mar 29 2:00 0 -
+Rule Aus 1942 only - Sep 27 2:00 1:00 -
+Rule Aus 1943 1944 - Mar lastSun 2:00 0 -
+Rule Aus 1943 only - Oct 3 2:00 1:00 -
+# Go with Whitman and the Australian National Standards Commission, which
+# says W Australia didn't use DST in 1943/1944. Ignore Whitman's claim that
+# 1944/1945 was just like 1943/1944.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+# Northern Territory
+Zone Australia/Darwin 8:43:20 - LMT 1895 Feb
+ 9:00 - CST 1899 May
+ 9:30 Aus CST
+# Western Australia
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule AW 1974 only - Oct lastSun 2:00s 1:00 -
+Rule AW 1975 only - Mar Sun>=1 2:00s 0 -
+Rule AW 1983 only - Oct lastSun 2:00s 1:00 -
+Rule AW 1984 only - Mar Sun>=1 2:00s 0 -
+Rule AW 1991 only - Nov 17 2:00s 1:00 -
+Rule AW 1992 only - Mar Sun>=1 2:00s 0 -
+Rule AW 2006 only - Dec 3 2:00s 1:00 -
+Rule AW 2007 2009 - Mar lastSun 2:00s 0 -
+Rule AW 2007 2008 - Oct lastSun 2:00s 1:00 -
+Zone Australia/Perth 7:43:24 - LMT 1895 Dec
+ 8:00 Aus WST 1943 Jul
+ 8:00 AW WST
+Zone Australia/Eucla 8:35:28 - LMT 1895 Dec
+ 8:45 Aus CWST 1943 Jul
+ 8:45 AW CWST
+
+# Queensland
+#
+# From Alex Livingston (1996-11-01):
+# I have heard or read more than once that some resort islands off the coast
+# of Queensland chose to keep observing daylight-saving time even after
+# Queensland ceased to.
+#
+# From Paul Eggert (1996-11-22):
+# IATA SSIM (1993-02/1994-09) say that the Holiday Islands (Hayman, Lindeman,
+# Hamilton) observed DST for two years after the rest of Queensland stopped.
+# Hamilton is the largest, but there is also a Hamilton in Victoria,
+# so use Lindeman.
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule AQ 1971 only - Oct lastSun 2:00s 1:00 -
+Rule AQ 1972 only - Feb lastSun 2:00s 0 -
+Rule AQ 1989 1991 - Oct lastSun 2:00s 1:00 -
+Rule AQ 1990 1992 - Mar Sun>=1 2:00s 0 -
+Rule Holiday 1992 1993 - Oct lastSun 2:00s 1:00 -
+Rule Holiday 1993 1994 - Mar Sun>=1 2:00s 0 -
+Zone Australia/Brisbane 10:12:08 - LMT 1895
+ 10:00 Aus EST 1971
+ 10:00 AQ EST
+Zone Australia/Lindeman 9:55:56 - LMT 1895
+ 10:00 Aus EST 1971
+ 10:00 AQ EST 1992 Jul
+ 10:00 Holiday EST
+
+# South Australia
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule AS 1971 1985 - Oct lastSun 2:00s 1:00 -
+Rule AS 1986 only - Oct 19 2:00s 1:00 -
+Rule AS 1987 2007 - Oct lastSun 2:00s 1:00 -
+Rule AS 1972 only - Feb 27 2:00s 0 -
+Rule AS 1973 1985 - Mar Sun>=1 2:00s 0 -
+Rule AS 1986 1989 - Mar Sun>=15 2:00s 0 -
+Rule AS 1990 only - Mar Sun>=18 2:00s 0 -
+Rule AS 1991 only - Mar Sun>=1 2:00s 0 -
+Rule AS 1992 only - Mar Sun>=18 2:00s 0 -
+Rule AS 1993 only - Mar Sun>=1 2:00s 0 -
+Rule AS 1994 only - Mar Sun>=18 2:00s 0 -
+Rule AS 1995 2005 - Mar lastSun 2:00s 0 -
+Rule AS 2006 only - Apr Sun>=1 2:00s 0 -
+Rule AS 2007 only - Mar lastSun 2:00s 0 -
+Rule AS 2008 max - Apr Sun>=1 2:00s 0 -
+Rule AS 2008 max - Oct Sun>=1 2:00s 1:00 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Australia/Adelaide 9:14:20 - LMT 1895 Feb
+ 9:00 - CST 1899 May
+ 9:30 Aus CST 1971
+ 9:30 AS CST
+
+# Tasmania
+#
+# From Paul Eggert (2005-08-16):
+# <http://www.bom.gov.au/climate/averages/tables/dst_times.shtml>
+# says King Island didn't observe DST from WWII until late 1971.
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule AT 1967 only - Oct Sun>=1 2:00s 1:00 -
+Rule AT 1968 only - Mar lastSun 2:00s 0 -
+Rule AT 1968 1985 - Oct lastSun 2:00s 1:00 -
+Rule AT 1969 1971 - Mar Sun>=8 2:00s 0 -
+Rule AT 1972 only - Feb lastSun 2:00s 0 -
+Rule AT 1973 1981 - Mar Sun>=1 2:00s 0 -
+Rule AT 1982 1983 - Mar lastSun 2:00s 0 -
+Rule AT 1984 1986 - Mar Sun>=1 2:00s 0 -
+Rule AT 1986 only - Oct Sun>=15 2:00s 1:00 -
+Rule AT 1987 1990 - Mar Sun>=15 2:00s 0 -
+Rule AT 1987 only - Oct Sun>=22 2:00s 1:00 -
+Rule AT 1988 1990 - Oct lastSun 2:00s 1:00 -
+Rule AT 1991 1999 - Oct Sun>=1 2:00s 1:00 -
+Rule AT 1991 2005 - Mar lastSun 2:00s 0 -
+Rule AT 2000 only - Aug lastSun 2:00s 1:00 -
+Rule AT 2001 max - Oct Sun>=1 2:00s 1:00 -
+Rule AT 2006 only - Apr Sun>=1 2:00s 0 -
+Rule AT 2007 only - Mar lastSun 2:00s 0 -
+Rule AT 2008 max - Apr Sun>=1 2:00s 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Australia/Hobart 9:49:16 - LMT 1895 Sep
+ 10:00 - EST 1916 Oct 1 2:00
+ 10:00 1:00 EST 1917 Feb
+ 10:00 Aus EST 1967
+ 10:00 AT EST
+Zone Australia/Currie 9:35:28 - LMT 1895 Sep
+ 10:00 - EST 1916 Oct 1 2:00
+ 10:00 1:00 EST 1917 Feb
+ 10:00 Aus EST 1971 Jul
+ 10:00 AT EST
+
+# Victoria
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule AV 1971 1985 - Oct lastSun 2:00s 1:00 -
+Rule AV 1972 only - Feb lastSun 2:00s 0 -
+Rule AV 1973 1985 - Mar Sun>=1 2:00s 0 -
+Rule AV 1986 1990 - Mar Sun>=15 2:00s 0 -
+Rule AV 1986 1987 - Oct Sun>=15 2:00s 1:00 -
+Rule AV 1988 1999 - Oct lastSun 2:00s 1:00 -
+Rule AV 1991 1994 - Mar Sun>=1 2:00s 0 -
+Rule AV 1995 2005 - Mar lastSun 2:00s 0 -
+Rule AV 2000 only - Aug lastSun 2:00s 1:00 -
+Rule AV 2001 2007 - Oct lastSun 2:00s 1:00 -
+Rule AV 2006 only - Apr Sun>=1 2:00s 0 -
+Rule AV 2007 only - Mar lastSun 2:00s 0 -
+Rule AV 2008 max - Apr Sun>=1 2:00s 0 -
+Rule AV 2008 max - Oct Sun>=1 2:00s 1:00 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Australia/Melbourne 9:39:52 - LMT 1895 Feb
+ 10:00 Aus EST 1971
+ 10:00 AV EST
+
+# New South Wales
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule AN 1971 1985 - Oct lastSun 2:00s 1:00 -
+Rule AN 1972 only - Feb 27 2:00s 0 -
+Rule AN 1973 1981 - Mar Sun>=1 2:00s 0 -
+Rule AN 1982 only - Apr Sun>=1 2:00s 0 -
+Rule AN 1983 1985 - Mar Sun>=1 2:00s 0 -
+Rule AN 1986 1989 - Mar Sun>=15 2:00s 0 -
+Rule AN 1986 only - Oct 19 2:00s 1:00 -
+Rule AN 1987 1999 - Oct lastSun 2:00s 1:00 -
+Rule AN 1990 1995 - Mar Sun>=1 2:00s 0 -
+Rule AN 1996 2005 - Mar lastSun 2:00s 0 -
+Rule AN 2000 only - Aug lastSun 2:00s 1:00 -
+Rule AN 2001 2007 - Oct lastSun 2:00s 1:00 -
+Rule AN 2006 only - Apr Sun>=1 2:00s 0 -
+Rule AN 2007 only - Mar lastSun 2:00s 0 -
+Rule AN 2008 max - Apr Sun>=1 2:00s 0 -
+Rule AN 2008 max - Oct Sun>=1 2:00s 1:00 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Australia/Sydney 10:04:52 - LMT 1895 Feb
+ 10:00 Aus EST 1971
+ 10:00 AN EST
+Zone Australia/Broken_Hill 9:25:48 - LMT 1895 Feb
+ 10:00 - EST 1896 Aug 23
+ 9:00 - CST 1899 May
+ 9:30 Aus CST 1971
+ 9:30 AN CST 2000
+ 9:30 AS CST
+
+# Lord Howe Island
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule LH 1981 1984 - Oct lastSun 2:00 1:00 -
+Rule LH 1982 1985 - Mar Sun>=1 2:00 0 -
+Rule LH 1985 only - Oct lastSun 2:00 0:30 -
+Rule LH 1986 1989 - Mar Sun>=15 2:00 0 -
+Rule LH 1986 only - Oct 19 2:00 0:30 -
+Rule LH 1987 1999 - Oct lastSun 2:00 0:30 -
+Rule LH 1990 1995 - Mar Sun>=1 2:00 0 -
+Rule LH 1996 2005 - Mar lastSun 2:00 0 -
+Rule LH 2000 only - Aug lastSun 2:00 0:30 -
+Rule LH 2001 2007 - Oct lastSun 2:00 0:30 -
+Rule LH 2006 only - Apr Sun>=1 2:00 0 -
+Rule LH 2007 only - Mar lastSun 2:00 0 -
+Rule LH 2008 max - Apr Sun>=1 2:00 0 -
+Rule LH 2008 max - Oct Sun>=1 2:00 0:30 -
+Zone Australia/Lord_Howe 10:36:20 - LMT 1895 Feb
+ 10:00 - EST 1981 Mar
+ 10:30 LH LHST
+
+# Australian miscellany
+#
+# Ashmore Is, Cartier
+# no indigenous inhabitants; only seasonal caretakers
+# no times are set
+#
+# Coral Sea Is
+# no indigenous inhabitants; only meteorologists
+# no times are set
+#
+# Macquarie
+# permanent occupation (scientific station) since 1948;
+# sealing and penguin oil station operated 1888/1917
+# like Australia/Hobart
+
+# Christmas
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Indian/Christmas 7:02:52 - LMT 1895 Feb
+ 7:00 - CXT # Christmas Island Time
+
+# Cook Is
+# From Shanks & Pottenger:
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Cook 1978 only - Nov 12 0:00 0:30 HS
+Rule Cook 1979 1991 - Mar Sun>=1 0:00 0 -
+Rule Cook 1979 1990 - Oct lastSun 0:00 0:30 HS
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Rarotonga -10:39:04 - LMT 1901 # Avarua
+ -10:30 - CKT 1978 Nov 12 # Cook Is Time
+ -10:00 Cook CK%sT
+
+# Cocos
+# These islands were ruled by the Ross family from about 1830 to 1978.
+# We don't know when standard time was introduced; for now, we guess 1900.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Indian/Cocos 6:27:40 - LMT 1900
+ 6:30 - CCT # Cocos Islands Time
+
+# Fiji
+# From Alexander Krivenyshev (2009-11-10):
+# According to Fiji Broadcasting Corporation, Fiji plans to re-introduce DST
+# from November 29th 2009 to April 25th 2010.
+#
+# "Daylight savings to commence this month"
+# <a href="http://www.radiofiji.com.fj/fullstory.php?id=23719">
+# http://www.radiofiji.com.fj/fullstory.php?id=23719
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_fiji01.html">
+# http://www.worldtimezone.com/dst_news/dst_news_fiji01.html
+# </a>
+
+# From Steffen Thorsen (2009-11-10):
+# The Fiji Government has posted some more details about the approved
+# amendments:
+# <a href="http://www.fiji.gov.fj/publish/page_16198.shtml">
+# http://www.fiji.gov.fj/publish/page_16198.shtml
+# </a>
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Fiji 1998 1999 - Nov Sun>=1 2:00 1:00 S
+Rule Fiji 1999 2000 - Feb lastSun 3:00 0 -
+Rule Fiji 2009 only - Nov 29 2:00 1:00 S
+Rule Fiji 2010 only - Apr 25 3:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Fiji 11:53:40 - LMT 1915 Oct 26 # Suva
+ 12:00 Fiji FJ%sT # Fiji Time
+
+# French Polynesia
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea
+ -9:00 - GAMT # Gambier Time
+Zone Pacific/Marquesas -9:18:00 - LMT 1912 Oct
+ -9:30 - MART # Marquesas Time
+Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete
+ -10:00 - TAHT # Tahiti Time
+# Clipperton (near North America) is administered from French Polynesia;
+# it is uninhabited.
+
+# Guam
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Guam -14:21:00 - LMT 1844 Dec 31
+ 9:39:00 - LMT 1901 # Agana
+ 10:00 - GST 2000 Dec 23 # Guam
+ 10:00 - ChST # Chamorro Standard Time
+
+# Kiribati
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki
+ 12:00 - GILT # Gilbert Is Time
+Zone Pacific/Enderbury -11:24:20 - LMT 1901
+ -12:00 - PHOT 1979 Oct # Phoenix Is Time
+ -11:00 - PHOT 1995
+ 13:00 - PHOT
+Zone Pacific/Kiritimati -10:29:20 - LMT 1901
+ -10:40 - LINT 1979 Oct # Line Is Time
+ -10:00 - LINT 1995
+ 14:00 - LINT
+
+# N Mariana Is
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Saipan -14:17:00 - LMT 1844 Dec 31
+ 9:43:00 - LMT 1901
+ 9:00 - MPT 1969 Oct # N Mariana Is Time
+ 10:00 - MPT 2000 Dec 23
+ 10:00 - ChST # Chamorro Standard Time
+
+# Marshall Is
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Majuro 11:24:48 - LMT 1901
+ 11:00 - MHT 1969 Oct # Marshall Islands Time
+ 12:00 - MHT
+Zone Pacific/Kwajalein 11:09:20 - LMT 1901
+ 11:00 - MHT 1969 Oct
+ -12:00 - KWAT 1993 Aug 20 # Kwajalein Time
+ 12:00 - MHT
+
+# Micronesia
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Truk 10:07:08 - LMT 1901
+ 10:00 - TRUT # Truk Time
+Zone Pacific/Ponape 10:32:52 - LMT 1901 # Kolonia
+ 11:00 - PONT # Ponape Time
+Zone Pacific/Kosrae 10:51:56 - LMT 1901
+ 11:00 - KOST 1969 Oct # Kosrae Time
+ 12:00 - KOST 1999
+ 11:00 - KOST
+
+# Nauru
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Nauru 11:07:40 - LMT 1921 Jan 15 # Uaobe
+ 11:30 - NRT 1942 Mar 15 # Nauru Time
+ 9:00 - JST 1944 Aug 15
+ 11:30 - NRT 1979 May
+ 12:00 - NRT
+
+# New Caledonia
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule NC 1977 1978 - Dec Sun>=1 0:00 1:00 S
+Rule NC 1978 1979 - Feb 27 0:00 0 -
+Rule NC 1996 only - Dec 1 2:00s 1:00 S
+# Shanks & Pottenger say the following was at 2:00; go with IATA.
+Rule NC 1997 only - Mar 2 2:00s 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Noumea 11:05:48 - LMT 1912 Jan 13
+ 11:00 NC NC%sT
+
+
+###############################################################################
+
+# New Zealand
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule NZ 1927 only - Nov 6 2:00 1:00 S
+Rule NZ 1928 only - Mar 4 2:00 0 M
+Rule NZ 1928 1933 - Oct Sun>=8 2:00 0:30 S
+Rule NZ 1929 1933 - Mar Sun>=15 2:00 0 M
+Rule NZ 1934 1940 - Apr lastSun 2:00 0 M
+Rule NZ 1934 1940 - Sep lastSun 2:00 0:30 S
+Rule NZ 1946 only - Jan 1 0:00 0 S
+# Since 1957 Chatham has been 45 minutes ahead of NZ, but there's no
+# convenient notation for this so we must duplicate the Rule lines.
+Rule NZ 1974 only - Nov Sun>=1 2:00s 1:00 D
+Rule Chatham 1974 only - Nov Sun>=1 2:45s 1:00 D
+Rule NZ 1975 only - Feb lastSun 2:00s 0 S
+Rule Chatham 1975 only - Feb lastSun 2:45s 0 S
+Rule NZ 1975 1988 - Oct lastSun 2:00s 1:00 D
+Rule Chatham 1975 1988 - Oct lastSun 2:45s 1:00 D
+Rule NZ 1976 1989 - Mar Sun>=1 2:00s 0 S
+Rule Chatham 1976 1989 - Mar Sun>=1 2:45s 0 S
+Rule NZ 1989 only - Oct Sun>=8 2:00s 1:00 D
+Rule Chatham 1989 only - Oct Sun>=8 2:45s 1:00 D
+Rule NZ 1990 2006 - Oct Sun>=1 2:00s 1:00 D
+Rule Chatham 1990 2006 - Oct Sun>=1 2:45s 1:00 D
+Rule NZ 1990 2007 - Mar Sun>=15 2:00s 0 S
+Rule Chatham 1990 2007 - Mar Sun>=15 2:45s 0 S
+Rule NZ 2007 max - Sep lastSun 2:00s 1:00 D
+Rule Chatham 2007 max - Sep lastSun 2:45s 1:00 D
+Rule NZ 2008 max - Apr Sun>=1 2:00s 0 S
+Rule Chatham 2008 max - Apr Sun>=1 2:45s 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Auckland 11:39:04 - LMT 1868 Nov 2
+ 11:30 NZ NZ%sT 1946 Jan 1
+ 12:00 NZ NZ%sT
+Zone Pacific/Chatham 12:13:48 - LMT 1957 Jan 1
+ 12:45 Chatham CHA%sT
+
+
+# Auckland Is
+# uninhabited; Maori and Moriori, colonial settlers, pastoralists, sealers,
+# and scientific personnel have wintered
+
+# Campbell I
+# minor whaling stations operated 1909/1914
+# scientific station operated 1941/1995;
+# previously whalers, sealers, pastoralists, and scientific personnel wintered
+# was probably like Pacific/Auckland
+
+###############################################################################
+
+
+# Niue
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Niue -11:19:40 - LMT 1901 # Alofi
+ -11:20 - NUT 1951 # Niue Time
+ -11:30 - NUT 1978 Oct 1
+ -11:00 - NUT
+
+# Norfolk
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston
+ 11:12 - NMT 1951 # Norfolk Mean Time
+ 11:30 - NFT # Norfolk Time
+
+# Palau (Belau)
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror
+ 9:00 - PWT # Palau Time
+
+# Papua New Guinea
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Port_Moresby 9:48:40 - LMT 1880
+ 9:48:32 - PMMT 1895 # Port Moresby Mean Time
+ 10:00 - PGT # Papua New Guinea Time
+
+# Pitcairn
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown
+ -8:30 - PNT 1998 Apr 27 00:00
+ -8:00 - PST # Pitcairn Standard Time
+
+# American Samoa
+Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5
+ -11:22:48 - LMT 1911
+ -11:30 - SAMT 1950 # Samoa Time
+ -11:00 - NST 1967 Apr # N=Nome
+ -11:00 - BST 1983 Nov 30 # B=Bering
+ -11:00 - SST # S=Samoa
+
+# Samoa
+
+# From Alexander Krivenyshev (2008-12-06):
+# The Samoa government (Western Samoa) may implement DST on the first Sunday of
+# October 2009 (October 4, 2009) until the last Sunday of March 2010 (March 28,
+# 2010).
+#
+# "Selected Committee reports to Cabinet on Daylight Saving Time",
+# Government of Samoa:
+# <a href="http://www.govt.ws/pr_article.cfm?pr_id=560">
+# http://www.govt.ws/pr_article.cfm?pr_id=560
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_samoa01.html">
+# http://www.worldtimezone.com/dst_news/dst_news_samoa01.html
+# </a>
+
+# From Steffen Thorsen (2009-08-27):
+# Samoa's parliament passed the Daylight Saving Bill 2009, and will start
+# daylight saving time on the first Sunday of October 2009 and end on the
+# last Sunday of March 2010. We hope that the full text will be published
+# soon, but we believe that the bill is only valid for 2009-2010. Samoa's
+# Daylight Saving Act 2009 will be enforced as soon as the Head of State
+# executes a proclamation publicizing this Act.
+#
+# Some background information here, which will be updated once we have
+# more details:
+# <a href="http://www.timeanddate.com/news/time/samoa-dst-plan-2009.html">
+# http://www.timeanddate.com/news/time/samoa-dst-plan-2009.html
+# </a>
+
+# From Alexander Krivenyshev (2009-10-03):
+# First, my deepest condolences to people of Samoa islands and all families and
+# loved ones around the world who lost their lives in the earthquake and tsunami.
+#
+# Considering the recent devastation on Samoa by earthquake and tsunami and that
+# many government offices/ ministers are closed- not sure if "Daylight Saving
+# Bill 2009" will be implemented in next few days- on October 4, 2009.
+#
+# Here is reply from Consulate-General of Samoa in New Zealand
+# ---------------------------
+# Consul General
+# consulgeneral@samoaconsulate.org.nz
+#
+# Talofa Alexander,
+#
+# Thank you for your sympathy for our country but at this time we have not
+# been informed about the Daylight Savings Time Change. Most Ministries in
+# Apia are closed or relocating due to weather concerns.
+#
+# When we do find out if they are still proceeding with the time change we
+# will advise you soonest.
+#
+# Kind Regards,
+# Lana
+# for: Consul General
+
+# From Steffen Thorsen (2009-10-05):
+# We have called a hotel in Samoa and asked about local time there - they
+# are still on standard time.
+
+Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5
+ -11:26:56 - LMT 1911
+ -11:30 - SAMT 1950 # Samoa Time
+ -11:00 - WST 2009 Oct 4
+ -11:00 1:00 WSDT 2010 Mar 28
+ -11:00 - WST
+
+# Solomon Is
+# excludes Bougainville, for which see Papua New Guinea
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara
+ 11:00 - SBT # Solomon Is Time
+
+# Tokelau Is
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Fakaofo -11:24:56 - LMT 1901
+ -10:00 - TKT # Tokelau Time
+
+# Tonga
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Tonga 1999 only - Oct 7 2:00s 1:00 S
+Rule Tonga 2000 only - Mar 19 2:00s 0 -
+Rule Tonga 2000 2001 - Nov Sun>=1 2:00 1:00 S
+Rule Tonga 2001 2002 - Jan lastSun 2:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Tongatapu 12:19:20 - LMT 1901
+ 12:20 - TOT 1941 # Tonga Time
+ 13:00 - TOT 1999
+ 13:00 Tonga TO%sT
+
+# Tuvalu
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Funafuti 11:56:52 - LMT 1901
+ 12:00 - TVT # Tuvalu Time
+
+
+# US minor outlying islands
+
+# Howland, Baker
+# Howland was mined for guano by American companies 1857-1878 and British
+# 1886-1891; Baker was similar but exact dates are not known.
+# Inhabited by civilians 1935-1942; U.S. military bases 1943-1944;
+# uninhabited thereafter.
+# Howland observed Hawaii Standard Time (UTC-10:30) in 1937;
+# see page 206 of Elgen M. Long and Marie K. Long,
+# Amelia Earhart: the Mystery Solved, Simon & Schuster (2000).
+# So most likely Howland and Baker observed Hawaii Time from 1935
+# until they were abandoned after the war.
+
+# Jarvis
+# Mined for guano by American companies 1857-1879 and British 1883?-1891?.
+# Inhabited by civilians 1935-1942; IGY scientific base 1957-1958;
+# uninhabited thereafter.
+# no information; was probably like Pacific/Kiritimati
+
+# Johnston
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Johnston -10:00 - HST
+
+# Kingman
+# uninhabited
+
+# Midway
+#
+# From Mark Brader (2005-01-23):
+# [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies,
+# published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3]
+# reproduced a Pan American Airways timeables from 1936, for their weekly
+# "Orient Express" flights between San Francisco and Manila, and connecting
+# flights to Chicago and the US East Coast. As it uses some time zone
+# designations that I've never seen before:....
+# Fri. 6:30A Lv. HONOLOLU (Pearl Harbor), H.I. H.L.T. Ar. 5:30P Sun.
+# " 3:00P Ar. MIDWAY ISLAND . . . . . . . . . M.L.T. Lv. 6:00A "
+#
+Zone Pacific/Midway -11:49:28 - LMT 1901
+ -11:00 - NST 1956 Jun 3
+ -11:00 1:00 NDT 1956 Sep 2
+ -11:00 - NST 1967 Apr # N=Nome
+ -11:00 - BST 1983 Nov 30 # B=Bering
+ -11:00 - SST # S=Samoa
+
+# Palmyra
+# uninhabited since World War II; was probably like Pacific/Kiritimati
+
+# Wake
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Wake 11:06:28 - LMT 1901
+ 12:00 - WAKT # Wake Time
+
+
+# Vanuatu
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Vanuatu 1983 only - Sep 25 0:00 1:00 S
+Rule Vanuatu 1984 1991 - Mar Sun>=23 0:00 0 -
+Rule Vanuatu 1984 only - Oct 23 0:00 1:00 S
+Rule Vanuatu 1985 1991 - Sep Sun>=23 0:00 1:00 S
+Rule Vanuatu 1992 1993 - Jan Sun>=23 0:00 0 -
+Rule Vanuatu 1992 only - Oct Sun>=23 0:00 1:00 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila
+ 11:00 Vanuatu VU%sT # Vanuatu Time
+
+# Wallis and Futuna
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Pacific/Wallis 12:15:20 - LMT 1901
+ 12:00 - WFT # Wallis & Futuna Time
+
+###############################################################################
+
+# NOTES
+
+# This data is by no means authoritative; if you think you know better,
+# go ahead and edit the file (and please send any changes to
+# tz@elsie.nci.nih.gov for general use in the future).
+
+# From Paul Eggert (2006-03-22):
+# A good source for time zone historical data outside the U.S. is
+# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+# San Diego: ACS Publications, Inc. (2003).
+#
+# Gwillim Law writes that a good source
+# for recent time zone data is the International Air Transport
+# Association's Standard Schedules Information Manual (IATA SSIM),
+# published semiannually. Law sent in several helpful summaries
+# of the IATA's data after 1990.
+#
+# Except where otherwise noted, Shanks & Pottenger is the source for
+# entries through 1990, and IATA SSIM is the source for entries afterwards.
+#
+# Another source occasionally used is Edward W. Whitman, World Time Differences,
+# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
+# I found in the UCLA library.
+#
+# A reliable and entertaining source about time zones is
+# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+#
+# I invented the abbreviations marked `*' in the following table;
+# the rest are from earlier versions of this file, or from other sources.
+# Corrections are welcome!
+# std dst
+# LMT Local Mean Time
+# 8:00 WST WST Western Australia
+# 8:45 CWST CWST Central Western Australia*
+# 9:00 JST Japan
+# 9:30 CST CST Central Australia
+# 10:00 EST EST Eastern Australia
+# 10:00 ChST Chamorro
+# 10:30 LHST LHST Lord Howe*
+# 11:30 NZMT NZST New Zealand through 1945
+# 12:00 NZST NZDT New Zealand 1946-present
+# 12:45 CHAST CHADT Chatham*
+# -11:00 SST Samoa
+# -10:00 HST Hawaii
+# - 8:00 PST Pitcairn*
+#
+# See the `northamerica' file for Hawaii.
+# See the `southamerica' file for Easter I and the Galapagos Is.
+
+###############################################################################
+
+# Australia
+
+# From Paul Eggert (2005-12-08):
+# <a href="http://www.bom.gov.au/climate/averages/tables/dst_times.shtml">
+# Implementation Dates of Daylight Saving Time within Australia
+# </a> summarizes daylight saving issues in Australia.
+
+# From Arthur David Olson (2005-12-12):
+# <a href="http://www.lawlink.nsw.gov.au/lawlink/Corporate/ll_agdinfo.nsf/pages/community_relations_daylight_saving">
+# Lawlink NSW:Daylight Saving in New South Wales
+# </a> covers New South Wales in particular.
+
+# From John Mackin (1991-03-06):
+# We in Australia have _never_ referred to DST as `daylight' time.
+# It is called `summer' time. Now by a happy coincidence, `summer'
+# and `standard' happen to start with the same letter; hence, the
+# abbreviation does _not_ change...
+# The legislation does not actually define abbreviations, at least
+# in this State, but the abbreviation is just commonly taken to be the
+# initials of the phrase, and the legislation here uniformly uses
+# the phrase `summer time' and does not use the phrase `daylight
+# time'.
+# Announcers on the Commonwealth radio network, the ABC (for Australian
+# Broadcasting Commission), use the phrases `Eastern Standard Time'
+# or `Eastern Summer Time'. (Note, though, that as I say in the
+# current australasia file, there is really no such thing.) Announcers
+# on its overseas service, Radio Australia, use the same phrases
+# prefixed by the word `Australian' when referring to local times;
+# time announcements on that service, naturally enough, are made in UTC.
+
+# From Arthur David Olson (1992-03-08):
+# Given the above, what's chosen for year-round use is:
+# CST for any place operating at a GMTOFF of 9:30
+# WST for any place operating at a GMTOFF of 8:00
+# EST for any place operating at a GMTOFF of 10:00
+
+# From Chuck Soper (2006-06-01):
+# I recently found this Australian government web page on time zones:
+# <http://www.australia.gov.au/about-australia-13time>
+# And this government web page lists time zone names and abbreviations:
+# <http://www.bom.gov.au/climate/averages/tables/daysavtm.shtml>
+
+# From Paul Eggert (2001-04-05), summarizing a long discussion about "EST"
+# versus "AEST" etc.:
+#
+# I see the following points of dispute:
+#
+# * How important are unique time zone abbreviations?
+#
+# Here I tend to agree with the point (most recently made by Chris
+# Newman) that unique abbreviations should not be essential for proper
+# operation of software. We have other instances of ambiguity
+# (e.g. "IST" denoting both "Israel Standard Time" and "Indian
+# Standard Time"), and they are not likely to go away any time soon.
+# In the old days, some software mistakenly relied on unique
+# abbreviations, but this is becoming less true with time, and I don't
+# think it's that important to cater to such software these days.
+#
+# On the other hand, there is another motivation for unambiguous
+# abbreviations: it cuts down on human confusion. This is
+# particularly true for Australia, where "EST" can mean one thing for
+# time T and a different thing for time T plus 1 second.
+#
+# * Does the relevant legislation indicate which abbreviations should be used?
+#
+# Here I tend to think that things are a mess, just as they are in
+# many other countries. We Americans are currently disagreeing about
+# which abbreviation to use for the newly legislated Chamorro Standard
+# Time, for example.
+#
+# Personally, I would prefer to use common practice; I would like to
+# refer to legislation only for examples of common practice, or as a
+# tiebreaker.
+#
+# * Do Australians more often use "Eastern Daylight Time" or "Eastern
+# Summer Time"? Do they typically prefix the time zone names with
+# the word "Australian"?
+#
+# My own impression is that both "Daylight Time" and "Summer Time" are
+# common and are widely understood, but that "Summer Time" is more
+# popular; and that the leading "A" is also common but is omitted more
+# often than not. I just used AltaVista advanced search and got the
+# following count of page hits:
+#
+# 1,103 "Eastern Summer Time" AND domain:au
+# 971 "Australian Eastern Summer Time" AND domain:au
+# 613 "Eastern Daylight Time" AND domain:au
+# 127 "Australian Eastern Daylight Time" AND domain:au
+#
+# Here "Summer" seems quite a bit more popular than "Daylight",
+# particularly when we know the time zone is Australian and not US,
+# say. The "Australian" prefix seems to be popular for Eastern Summer
+# Time, but unpopular for Eastern Daylight Time.
+#
+# For abbreviations, tools like AltaVista are less useful because of
+# ambiguity. Many hits are not really time zones, unfortunately, and
+# many hits denote US time zones and not Australian ones. But here
+# are the hit counts anyway:
+#
+# 161,304 "EST" and domain:au
+# 25,156 "EDT" and domain:au
+# 18,263 "AEST" and domain:au
+# 10,416 "AEDT" and domain:au
+#
+# 14,538 "CST" and domain:au
+# 5,728 "CDT" and domain:au
+# 176 "ACST" and domain:au
+# 29 "ACDT" and domain:au
+#
+# 7,539 "WST" and domain:au
+# 68 "AWST" and domain:au
+#
+# This data suggest that Australians tend to omit the "A" prefix in
+# practice. The situation for "ST" versus "DT" is less clear, given
+# the ambiguities involved.
+#
+# * How do Australians feel about the abbreviations in the tz database?
+#
+# If you just count Australians on this list, I count 2 in favor and 3
+# against. One of the "against" votes (David Keegel) counseled delay,
+# saying that both AEST/AEDT and EST/EST are widely used and
+# understood in Australia.
+
+# From Paul Eggert (1995-12-19):
+# Shanks & Pottenger report 2:00 for all autumn changes in Australia and NZ.
+# Mark Prior writes that his newspaper
+# reports that NSW's fall 1995 change will occur at 2:00,
+# but Robert Elz says it's been 3:00 in Victoria since 1970
+# and perhaps the newspaper's `2:00' is referring to standard time.
+# For now we'll continue to assume 2:00s for changes since 1960.
+
+# From Eric Ulevik (1998-01-05):
+#
+# Here are some URLs to Australian time legislation. These URLs are stable,
+# and should probably be included in the data file. There are probably more
+# relevant entries in this database.
+#
+# NSW (including LHI and Broken Hill):
+# <a href="http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html">
+# Standard Time Act 1987 (updated 1995-04-04)
+# </a>
+# ACT
+# <a href="http://www.austlii.edu.au/au/legis/act/consol_act/stasta1972279/index.html">
+# Standard Time and Summer Time Act 1972
+# </a>
+# SA
+# <a href="http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html">
+# Standard Time Act, 1898
+# </a>
+
+# From David Grosz (2005-06-13):
+# It was announced last week that Daylight Saving would be extended by
+# one week next year to allow for the 2006 Commonwealth Games.
+# Daylight Saving is now to end for next year only on the first Sunday
+# in April instead of the last Sunday in March.
+#
+# From Gwillim Law (2005-06-14):
+# I did some Googling and found that all of those states (and territory) plan
+# to extend DST together in 2006.
+# ACT: http://www.cmd.act.gov.au/mediareleases/fileread.cfm?file=86.txt
+# New South Wales: http://www.thecouriermail.news.com.au/common/story_page/0,5936,15538869%255E1702,00.html
+# South Australia: http://www.news.com.au/story/0,10117,15555031-1246,00.html
+# Tasmania: http://www.media.tas.gov.au/release.php?id=14772
+# Victoria: I wasn't able to find anything separate, but the other articles
+# allude to it.
+# But not Queensland
+# http://www.news.com.au/story/0,10117,15564030-1248,00.html.
+
+# Northern Territory
+
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# # The NORTHERN TERRITORY.. [ Courtesy N.T. Dept of the Chief Minister ]
+# # [ Nov 1990 ]
+# # N.T. have never utilised any DST due to sub-tropical/tropical location.
+# ...
+# Zone Australia/North 9:30 - CST
+
+# From Bradley White (1991-03-04):
+# A recent excerpt from an Australian newspaper...
+# the Northern Territory do[es] not have daylight saving.
+
+# Western Australia
+
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# # The state of WESTERN AUSTRALIA.. [ Courtesy W.A. dept Premier+Cabinet ]
+# # [ Nov 1990 ]
+# # W.A. suffers from a great deal of public and political opposition to
+# # DST in principle. A bill is brought before parliament in most years, but
+# # usually defeated either in the upper house, or in party caucus
+# # before reaching parliament.
+# ...
+# Zone Australia/West 8:00 AW %sST
+# ...
+# Rule AW 1974 only - Oct lastSun 2:00 1:00 D
+# Rule AW 1975 only - Mar Sun>=1 3:00 0 W
+# Rule AW 1983 only - Oct lastSun 2:00 1:00 D
+# Rule AW 1984 only - Mar Sun>=1 3:00 0 W
+
+# From Bradley White (1991-03-04):
+# A recent excerpt from an Australian newspaper...
+# Western Australia...do[es] not have daylight saving.
+
+# From John D. Newman via Bradley White (1991-11-02):
+# Western Australia is still on "winter time". Some DH in Sydney
+# rang me at home a few days ago at 6.00am. (He had just arrived at
+# work at 9.00am.)
+# W.A. is switching to Summer Time on Nov 17th just to confuse
+# everybody again.
+
+# From Arthur David Olson (1992-03-08):
+# The 1992 ending date used in the rules is a best guess;
+# it matches what was used in the past.
+
+# <a href="http://www.bom.gov.au/faq/faqgen.htm">
+# The Australian Bureau of Meteorology FAQ
+# </a> (1999-09-27) writes that Giles Meteorological Station uses
+# South Australian time even though it's located in Western Australia.
+
+# Queensland
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# # The state of QUEENSLAND.. [ Courtesy Qld. Dept Premier Econ&Trade Devel ]
+# # [ Dec 1990 ]
+# ...
+# Zone Australia/Queensland 10:00 AQ %sST
+# ...
+# Rule AQ 1971 only - Oct lastSun 2:00 1:00 D
+# Rule AQ 1972 only - Feb lastSun 3:00 0 E
+# Rule AQ 1989 max - Oct lastSun 2:00 1:00 D
+# Rule AQ 1990 max - Mar Sun>=1 3:00 0 E
+
+# From Bradley White (1989-12-24):
+# "Australia/Queensland" now observes daylight time (i.e. from
+# October 1989).
+
+# From Bradley White (1991-03-04):
+# A recent excerpt from an Australian newspaper...
+# ...Queensland...[has] agreed to end daylight saving
+# at 3am tomorrow (March 3)...
+
+# From John Mackin (1991-03-06):
+# I can certainly confirm for my part that Daylight Saving in NSW did in fact
+# end on Sunday, 3 March. I don't know at what hour, though. (It surprised
+# me.)
+
+# From Bradley White (1992-03-08):
+# ...there was recently a referendum in Queensland which resulted
+# in the experimental daylight saving system being abandoned. So, ...
+# ...
+# Rule QLD 1989 1991 - Oct lastSun 2:00 1:00 D
+# Rule QLD 1990 1992 - Mar Sun>=1 3:00 0 S
+# ...
+
+# From Arthur David Olson (1992-03-08):
+# The chosen rules the union of the 1971/1972 change and the 1989-1992 changes.
+
+# From Christopher Hunt (2006-11-21), after an advance warning
+# from Jesper Norgaard Welen (2006-11-01):
+# WA are trialing DST for three years.
+# <http://www.parliament.wa.gov.au/parliament/bills.nsf/9A1B183144403DA54825721200088DF1/$File/Bill175-1B.pdf>
+
+# From Rives McDow (2002-04-09):
+# The most interesting region I have found consists of three towns on the
+# southern coast.... South Australia observes daylight saving time; Western
+# Australia does not. The two states are one and a half hours apart. The
+# residents decided to forget about this nonsense of changing the clock so
+# much and set the local time 20 hours and 45 minutes from the
+# international date line, or right in the middle of the time of South
+# Australia and Western Australia....
+#
+# From Paul Eggert (2002-04-09):
+# This is confirmed by the section entitled
+# "What's the deal with time zones???" in
+# <http://www.earthsci.unimelb.edu.au/~awatkins/null.html>.
+#
+# From Alex Livingston (2006-12-07):
+# ... it was just on four years ago that I drove along the Eyre Highway,
+# which passes through eastern Western Australia close to the southern
+# coast of the continent.
+#
+# I paid particular attention to the time kept there. There can be no
+# dispute that UTC+08:45 was considered "the time" from the border
+# village just inside the border with South Australia to as far west
+# as just east of Caiguna. There can also be no dispute that Eucla is
+# the largest population centre in this zone....
+#
+# Now that Western Australia is observing daylight saving, the
+# question arose whether this part of the state would follow suit. I
+# just called the border village and confirmed that indeed they have,
+# meaning that they are now observing UTC+09:45.
+#
+# (2006-12-09):
+# I personally doubt that either experimentation with daylight saving
+# in WA or its introduction in SA had anything to do with the genesis
+# of this time zone. My hunch is that it's been around since well
+# before 1975. I remember seeing it noted on road maps decades ago.
+
+# From Paul Eggert (2006-12-15):
+# For lack of better info, assume the tradition dates back to the
+# introduction of standard time in 1895.
+
+
+# southeast Australia
+#
+# From Paul Eggert (2007-07-23):
+# Starting autumn 2008 Victoria, NSW, South Australia, Tasmania and the ACT
+# end DST the first Sunday in April and start DST the first Sunday in October.
+# http://www.theage.com.au/news/national/daylight-savings-to-span-six-months/2007/06/27/1182623966703.html
+
+
+# South Australia
+
+# From Bradley White (1991-03-04):
+# A recent excerpt from an Australian newspaper...
+# ...South Australia...[has] agreed to end daylight saving
+# at 3am tomorrow (March 3)...
+
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# # The state of SOUTH AUSTRALIA....[ Courtesy of S.A. Dept of Labour ]
+# # [ Nov 1990 ]
+# ...
+# Zone Australia/South 9:30 AS %sST
+# ...
+# Rule AS 1971 max - Oct lastSun 2:00 1:00 D
+# Rule AS 1972 1985 - Mar Sun>=1 3:00 0 C
+# Rule AS 1986 1990 - Mar Sun>=15 3:00 0 C
+# Rule AS 1991 max - Mar Sun>=1 3:00 0 C
+
+# From Bradley White (1992-03-11):
+# Recent correspondence with a friend in Adelaide
+# contained the following exchange: "Due to the Adelaide Festival,
+# South Australia delays setting back our clocks for a few weeks."
+
+# From Robert Elz (1992-03-13):
+# I heard that apparently (or at least, it appears that)
+# South Aus will have an extra 3 weeks daylight saving every even
+# numbered year (from 1990). That's when the Adelaide Festival
+# is on...
+
+# From Robert Elz (1992-03-16, 00:57:07 +1000):
+# DST didn't end in Adelaide today (yesterday)....
+# But whether it's "4th Sunday" or "2nd last Sunday" I have no idea whatever...
+# (it's just as likely to be "the Sunday we pick for this year"...).
+
+# From Bradley White (1994-04-11):
+# If Sun, 15 March, 1992 was at +1030 as kre asserts, but yet Sun, 20 March,
+# 1994 was at +0930 as John Connolly's customer seems to assert, then I can
+# only conclude that the actual rule is more complicated....
+
+# From John Warburton (1994-10-07):
+# The new Daylight Savings dates for South Australia ...
+# was gazetted in the Government Hansard on Sep 26 1994....
+# start on last Sunday in October and end in last sunday in March.
+
+# From Paul Eggert (2007-07-23):
+# See "southeast Australia" above for 2008 and later.
+
+# Tasmania
+
+# The rules for 1967 through 1991 were reported by George Shepherd
+# via Simon Woodhead via Robert Elz (1991-03-06):
+# # The state of TASMANIA.. [Courtesy Tasmanian Dept of Premier + Cabinet ]
+# # [ Nov 1990 ]
+
+# From Bill Hart via Guy Harris (1991-10-10):
+# Oh yes, the new daylight savings rules are uniquely tasmanian, we have
+# 6 weeks a year now when we are out of sync with the rest of Australia
+# (but nothing new about that).
+
+# From Alex Livingston (1999-10-04):
+# I heard on the ABC (Australian Broadcasting Corporation) radio news on the
+# (long) weekend that Tasmania, which usually goes its own way in this regard,
+# has decided to join with most of NSW, the ACT, and most of Victoria
+# (Australia) and start daylight saving on the last Sunday in August in 2000
+# instead of the first Sunday in October.
+
+# Sim Alam (2000-07-03) reported a legal citation for the 2000/2001 rules:
+# http://www.thelaw.tas.gov.au/fragview/42++1968+GS3A@EN+2000070300
+
+# From Paul Eggert (2007-07-23):
+# See "southeast Australia" above for 2008 and later.
+
+# Victoria
+
+# The rules for 1971 through 1991 were reported by George Shepherd
+# via Simon Woodhead via Robert Elz (1991-03-06):
+# # The state of VICTORIA.. [ Courtesy of Vic. Dept of Premier + Cabinet ]
+# # [ Nov 1990 ]
+
+# From Scott Harrington (2001-08-29):
+# On KQED's "City Arts and Lectures" program last night I heard an
+# interesting story about daylight savings time. Dr. John Heilbron was
+# discussing his book "The Sun in the Church: Cathedrals as Solar
+# Observatories"[1], and in particular the Shrine of Remembrance[2] located
+# in Melbourne, Australia.
+#
+# Apparently the shrine's main purpose is a beam of sunlight which
+# illuminates a special spot on the floor at the 11th hour of the 11th day
+# of the 11th month (Remembrance Day) every year in memory of Australia's
+# fallen WWI soldiers. And if you go there on Nov. 11, at 11am local time,
+# you will indeed see the sunbeam illuminate the special spot at the
+# expected time.
+#
+# However, that is only because of some special mirror contraption that had
+# to be employed, since due to daylight savings time, the true solar time of
+# the remembrance moment occurs one hour later (or earlier?). Perhaps
+# someone with more information on this jury-rig can tell us more.
+#
+# [1] http://www.hup.harvard.edu/catalog/HEISUN.html
+# [2] http://www.shrine.org.au
+
+# From Paul Eggert (2007-07-23):
+# See "southeast Australia" above for 2008 and later.
+
+# New South Wales
+
+# From Arthur David Olson:
+# New South Wales and subjurisdictions have their own ideas of a fun time.
+# Based on law library research by John Mackin,
+# who notes:
+# In Australia, time is not legislated federally, but rather by the
+# individual states. Thus, while such terms as ``Eastern Standard Time''
+# [I mean, of course, Australian EST, not any other kind] are in common
+# use, _they have NO REAL MEANING_, as they are not defined in the
+# legislation. This is very important to understand.
+# I have researched New South Wales time only...
+
+# From Eric Ulevik (1999-05-26):
+# DST will start in NSW on the last Sunday of August, rather than the usual
+# October in 2000. [See: Matthew Moore,
+# <a href="http://www.smh.com.au/news/9905/26/pageone/pageone4.html">
+# Two months more daylight saving
+# </a>
+# Sydney Morning Herald (1999-05-26).]
+
+# From Paul Eggert (1999-09-27):
+# See the following official NSW source:
+# <a href="http://dir.gis.nsw.gov.au/cgi-bin/genobject/document/other/daylightsaving/tigGmZ">
+# Daylight Saving in New South Wales.
+# </a>
+#
+# Narrabri Shire (NSW) council has announced it will ignore the extension of
+# daylight saving next year. See:
+# <a href="http://abc.net.au/news/regionals/neweng/monthly/regeng-22jul1999-1.htm">
+# Narrabri Council to ignore daylight saving
+# </a> (1999-07-22). For now, we'll wait to see if this really happens.
+#
+# Victoria will following NSW. See:
+# <a href="http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm">
+# Vic to extend daylight saving
+# </a> (1999-07-28).
+#
+# However, South Australia rejected the DST request. See:
+# <a href="http://abc.net.au/news/olympics/1999/07/item19990719151754_1.htm">
+# South Australia rejects Olympics daylight savings request
+# </a> (1999-07-19).
+#
+# Queensland also will not observe DST for the Olympics. See:
+# <a href="http://abc.net.au/news/olympics/1999/06/item19990601114608_1.htm">
+# Qld says no to daylight savings for Olympics
+# </a> (1999-06-01), which quotes Queensland Premier Peter Beattie as saying
+# ``Look you've got to remember in my family when this came up last time
+# I voted for it, my wife voted against it and she said to me it's all very
+# well for you, you don't have to worry about getting the children out of
+# bed, getting them to school, getting them to sleep at night.
+# I've been through all this argument domestically...my wife rules.''
+#
+# Broken Hill will stick with South Australian time in 2000. See:
+# <a href="http://abc.net.au/news/regionals/brokenh/monthly/regbrok-21jul1999-6.htm">
+# Broken Hill to be behind the times
+# </a> (1999-07-21).
+
+# IATA SSIM (1998-09) says that the spring 2000 change for Australian
+# Capital Territory, New South Wales except Lord Howe Island and Broken
+# Hill, and Victoria will be August 27, presumably due to the Sydney Olympics.
+
+# From Eric Ulevik, referring to Sydney's Sun Herald (2000-08-13), page 29:
+# The Queensland Premier Peter Beattie is encouraging northern NSW
+# towns to use Queensland time.
+
+# From Paul Eggert (2007-07-23):
+# See "southeast Australia" above for 2008 and later.
+
+# Yancowinna
+
+# From John Mackin (1989-01-04):
+# `Broken Hill' means the County of Yancowinna.
+
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# # YANCOWINNA.. [ Confirmation courtesy of Broken Hill Postmaster ]
+# # [ Dec 1990 ]
+# ...
+# # Yancowinna uses Central Standard Time, despite [its] location on the
+# # New South Wales side of the S.A. border. Most business and social dealings
+# # are with CST zones, therefore CST is legislated by local government
+# # although the switch to Summer Time occurs in line with N.S.W. There have
+# # been years when this did not apply, but the historical data is not
+# # presently available.
+# Zone Australia/Yancowinna 9:30 AY %sST
+# ...
+# Rule AY 1971 1985 - Oct lastSun 2:00 1:00 D
+# Rule AY 1972 only - Feb lastSun 3:00 0 C
+# [followed by other Rules]
+
+# Lord Howe Island
+
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# LHI... [ Courtesy of Pauline Van Winsen ]
+# [ Dec 1990 ]
+# Lord Howe Island is located off the New South Wales coast, and is half an
+# hour ahead of NSW time.
+
+# From James Lonergan, Secretary, Lord Howe Island Board (2000-01-27):
+# Lord Howe Island summer time in 2000/2001 will commence on the same
+# date as the rest of NSW (i.e. 2000-08-27). For your information the
+# Lord Howe Island Board (controlling authority for the Island) is
+# seeking the community's views on various options for summer time
+# arrangements on the Island, e.g. advance clocks by 1 full hour
+# instead of only 30 minutes. Dependant on the wishes of residents
+# the Board may approach the NSW government to change the existing
+# arrangements. The starting date for summer time on the Island will
+# however always coincide with the rest of NSW.
+
+# From James Lonergan, Secretary, Lord Howe Island Board (2000-10-25):
+# Lord Howe Island advances clocks by 30 minutes during DST in NSW and retards
+# clocks by 30 minutes when DST finishes. Since DST was most recently
+# introduced in NSW, the "changeover" time on the Island has been 02:00 as
+# shown on clocks on LHI. I guess this means that for 30 minutes at the start
+# of DST, LHI is actually 1 hour ahead of the rest of NSW.
+
+# From Paul Eggert (2006-03-22):
+# For Lord Howe dates we use Shanks & Pottenger through 1989, and
+# Lonergan thereafter. For times we use Lonergan.
+
+# From Paul Eggert (2007-07-23):
+# See "southeast Australia" above for 2008 and later.
+
+# From Steffen Thorsen (2009-04-28):
+# According to the official press release, South Australia's extended daylight
+# saving period will continue with the same rules as used during the 2008-2009
+# summer (southern hemisphere).
+#
+# From
+# <a href="http://www.safework.sa.gov.au/uploaded_files/DaylightDatesSet.pdf">
+# http://www.safework.sa.gov.au/uploaded_files/DaylightDatesSet.pdf
+# </a>
+# The extended daylight saving period that South Australia has been trialling
+# for over the last year is now set to be ongoing.
+# Daylight saving will continue to start on the first Sunday in October each
+# year and finish on the first Sunday in April the following year.
+# Industrial Relations Minister, Paul Caica, says this provides South Australia
+# with a consistent half hour time difference with NSW, Victoria, Tasmania and
+# the ACT for all 52 weeks of the year...
+#
+# We have a wrap-up here:
+# <a href="http://www.timeanddate.com/news/time/south-australia-extends-dst.html">
+# http://www.timeanddate.com/news/time/south-australia-extends-dst.html
+# </a>
+###############################################################################
+
+# New Zealand
+
+# From Mark Davies (1990-10-03):
+# the 1989/90 year was a trial of an extended "daylight saving" period.
+# This trial was deemed successful and the extended period adopted for
+# subsequent years (with the addition of a further week at the start).
+# source -- phone call to Ministry of Internal Affairs Head Office.
+
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# # The Country of New Zealand (Australia's east island -) Gee they hate that!
+# # or is Australia the west island of N.Z.
+# # [ courtesy of Geoff Tribble.. Auckland N.Z. ]
+# # [ Nov 1990 ]
+# ...
+# Rule NZ 1974 1988 - Oct lastSun 2:00 1:00 D
+# Rule NZ 1989 max - Oct Sun>=1 2:00 1:00 D
+# Rule NZ 1975 1989 - Mar Sun>=1 3:00 0 S
+# Rule NZ 1990 max - Mar lastSun 3:00 0 S
+# ...
+# Zone NZ 12:00 NZ NZ%sT # New Zealand
+# Zone NZ-CHAT 12:45 - NZ-CHAT # Chatham Island
+
+# From Arthur David Olson (1992-03-08):
+# The chosen rules use the Davies October 8 values for the start of DST in 1989
+# rather than the October 1 value.
+
+# From Paul Eggert (1995-12-19);
+# Shank & Pottenger report 2:00 for all autumn changes in Australia and NZ.
+# Robert Uzgalis writes that the New Zealand Daylight
+# Savings Time Order in Council dated 1990-06-18 specifies 2:00 standard
+# time on both the first Sunday in October and the third Sunday in March.
+# As with Australia, we'll assume the tradition is 2:00s, not 2:00.
+#
+# From Paul Eggert (2006-03-22):
+# The Department of Internal Affairs (DIA) maintains a brief history,
+# as does Carol Squires; see tz-link.htm for the full references.
+# Use these sources in preference to Shanks & Pottenger.
+#
+# For Chatham, IATA SSIM (1991/1999) gives the NZ rules but with
+# transitions at 2:45 local standard time; this confirms that Chatham
+# is always exactly 45 minutes ahead of Auckland.
+
+# From Colin Sharples (2007-04-30):
+# DST will now start on the last Sunday in September, and end on the
+# first Sunday in April. The changes take effect this year, meaning
+# that DST will begin on 2007-09-30 2008-04-06.
+# http://www.dia.govt.nz/diawebsite.nsf/wpg_URL/Services-Daylight-Saving-Daylight-saving-to-be-extended
+
+###############################################################################
+
+
+# Fiji
+
+# Howse writes (p 153) that in 1879 the British governor of Fiji
+# enacted an ordinance standardizing the islands on Antipodean Time
+# instead of the American system (which was one day behind).
+
+# From Rives McDow (1998-10-08):
+# Fiji will introduce DST effective 0200 local time, 1998-11-01
+# until 0300 local time 1999-02-28. Each year the DST period will
+# be from the first Sunday in November until the last Sunday in February.
+
+# From Paul Eggert (2000-01-08):
+# IATA SSIM (1999-09) says DST ends 0100 local time. Go with McDow.
+
+# From the BBC World Service (1998-10-31 11:32 UTC):
+# The Fijiian government says the main reasons for the time change is to
+# improve productivity and reduce road accidents. But correspondents say it
+# also hopes the move will boost Fiji's ability to compete with other pacific
+# islands in the effort to attract tourists to witness the dawning of the new
+# millenium.
+
+# http://www.fiji.gov.fj/press/2000_09/2000_09_13-05.shtml (2000-09-13)
+# reports that Fiji has discontinued DST.
+
+# Johnston
+
+# Johnston data is from usno1995.
+
+
+# Kiribati
+
+# From Paul Eggert (1996-01-22):
+# Today's _Wall Street Journal_ (page 1) reports that Kiribati
+# ``declared it the same day throught the country as of Jan. 1, 1995''
+# as part of the competition to be first into the 21st century.
+
+
+# Kwajalein
+
+# In comp.risks 14.87 (26 August 1993), Peter Neumann writes:
+# I wonder what happened in Kwajalein, where there was NO Friday,
+# 1993-08-20. Thursday night at midnight Kwajalein switched sides with
+# respect to the International Date Line, to rejoin its fellow islands,
+# going from 11:59 p.m. Thursday to 12:00 m. Saturday in a blink.
+
+
+# N Mariana Is, Guam
+
+# Howse writes (p 153) ``The Spaniards, on the other hand, reached the
+# Philippines and the Ladrones from America,'' and implies that the Ladrones
+# (now called the Marianas) kept American date for quite some time.
+# For now, we assume the Ladrones switched at the same time as the Philippines;
+# see Asia/Manila.
+
+# US Public Law 106-564 (2000-12-23) made UTC+10 the official standard time,
+# under the name "Chamorro Standard Time". There is no official abbreviation,
+# but Congressman Robert A. Underwood, author of the bill that became law,
+# wrote in a press release (2000-12-27) that he will seek the use of "ChST".
+
+
+# Micronesia
+
+# Alan Eugene Davis writes (1996-03-16),
+# ``I am certain, having lived there for the past decade, that "Truk"
+# (now properly known as Chuuk) ... is in the time zone GMT+10.''
+#
+# Shanks & Pottenger write that Truk switched from UTC+10 to UTC+11
+# on 1978-10-01; ignore this for now.
+
+# From Paul Eggert (1999-10-29):
+# The Federated States of Micronesia Visitors Board writes in
+# <a href="http://www.fsmgov.org/info/clocks.html">
+# The Federated States of Micronesia - Visitor Information
+# </a> (1999-01-26)
+# that Truk and Yap are UTC+10, and Ponape and Kosrae are UTC+11.
+# We don't know when Kosrae switched from UTC+12; assume January 1 for now.
+
+
+# Midway
+
+# From Charles T O'Connor, KMTH DJ (1956),
+# quoted in the KTMH section of the Radio Heritage Collection
+# <http://radiodx.com/spdxr/KMTH.htm> (2002-12-31):
+# For the past two months we've been on what is known as Daylight
+# Saving Time. This time has put us on air at 5am in the morning,
+# your time down there in New Zealand. Starting September 2, 1956
+# we'll again go back to Standard Time. This'll mean that we'll go to
+# air at 6am your time.
+#
+# From Paul Eggert (2003-03-23):
+# We don't know the date of that quote, but we'll guess they
+# started DST on June 3. Possibly DST was observed other years
+# in Midway, but we have no record of it.
+
+
+# Pitcairn
+
+# From Rives McDow (1999-11-08):
+# A Proclamation was signed by the Governor of Pitcairn on the 27th March 1998
+# with regard to Pitcairn Standard Time. The Proclamation is as follows.
+#
+# The local time for general purposes in the Islands shall be
+# Co-ordinated Universal time minus 8 hours and shall be known
+# as Pitcairn Standard Time.
+#
+# ... I have also seen Pitcairn listed as UTC minus 9 hours in several
+# references, and can only assume that this was an error in interpretation
+# somehow in light of this proclamation.
+
+# From Rives McDow (1999-11-09):
+# The Proclamation regarding Pitcairn time came into effect on 27 April 1998
+# ... at midnight.
+
+# From Howie Phelps (1999-11-10), who talked to a Pitcairner via shortwave:
+# Betty Christian told me yesterday that their local time is the same as
+# Pacific Standard Time. They used to be 1/2 hour different from us here in
+# Sacramento but it was changed a couple of years ago.
+
+
+# Samoa
+
+# Howse writes (p 153, citing p 10 of the 1883-11-18 New York Herald)
+# that in 1879 the King of Samoa decided to change
+# ``the date in his kingdom from the Antipodean to the American system,
+# ordaining -- by a masterpiece of diplomatic flattery -- that
+# the Fourth of July should be celebrated twice in that year.''
+
+
+# Tonga
+
+# From Paul Eggert (1996-01-22):
+# Today's _Wall Street Journal_ (p 1) reports that ``Tonga has been plotting
+# to sneak ahead of [New Zealanders] by introducing daylight-saving time.''
+# Since Kiribati has moved the Date Line it's not clear what Tonga will do.
+
+# Don Mundell writes in the 1997-02-20 Tonga Chronicle
+# <a href="http://www.tongatapu.net.to/tonga/homeland/timebegins.htm">
+# How Tonga became `The Land where Time Begins'
+# </a>:
+
+# Until 1941 Tonga maintained a standard time 50 minutes ahead of NZST
+# 12 hours and 20 minutes ahead of GMT. When New Zealand adjusted its
+# standard time in 1940s, Tonga had the choice of subtracting from its
+# local time to come on the same standard time as New Zealand or of
+# advancing its time to maintain the differential of 13 degrees
+# (approximately 50 minutes ahead of New Zealand time).
+#
+# Because His Majesty King Taufa'ahau Tupou IV, then Crown Prince
+# Tungi, preferred to ensure Tonga's title as the land where time
+# begins, the Legislative Assembly approved the latter change.
+#
+# But some of the older, more conservative members from the outer
+# islands objected. "If at midnight on Dec. 31, we move ahead 40
+# minutes, as your Royal Highness wishes, what becomes of the 40
+# minutes we have lost?"
+#
+# The Crown Prince, presented an unanswerable argument: "Remember that
+# on the World Day of Prayer, you would be the first people on Earth
+# to say your prayers in the morning."
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger say the transition was on 1968-10-01; go with Mundell.
+
+# From Eric Ulevik (1999-05-03):
+# Tonga's director of tourism, who is also secretary of the National Millenium
+# Committee, has a plan to get Tonga back in front.
+# He has proposed a one-off move to tropical daylight saving for Tonga from
+# October to March, which has won approval in principle from the Tongan
+# Government.
+
+# From Steffen Thorsen (1999-09-09):
+# * Tonga will introduce DST in November
+#
+# I was given this link by John Letts:
+# <a href="http://news.bbc.co.uk/hi/english/world/asia-pacific/newsid_424000/424764.stm">
+# http://news.bbc.co.uk/hi/english/world/asia-pacific/newsid_424000/424764.stm
+# </a>
+#
+# I have not been able to find exact dates for the transition in November
+# yet. By reading this article it seems like Fiji will be 14 hours ahead
+# of UTC as well, but as far as I know Fiji will only be 13 hours ahead
+# (12 + 1 hour DST).
+
+# From Arthur David Olson (1999-09-20):
+# According to <a href="http://www.tongaonline.com/news/sept1799.html">
+# http://www.tongaonline.com/news/sept1799.html
+# </a>:
+# "Daylight Savings Time will take effect on Oct. 2 through April 15, 2000
+# and annually thereafter from the first Saturday in October through the
+# third Saturday of April. Under the system approved by Privy Council on
+# Sept. 10, clocks must be turned ahead one hour on the opening day and
+# set back an hour on the closing date."
+# Alas, no indication of the time of day.
+
+# From Rives McDow (1999-10-06):
+# Tonga started its Daylight Saving on Saturday morning October 2nd at 0200am.
+# Daylight Saving ends on April 16 at 0300am which is Sunday morning.
+
+# From Steffen Thorsen (2000-10-31):
+# Back in March I found a notice on the website http://www.tongaonline.com
+# that Tonga changed back to standard time one month early, on March 19
+# instead of the original reported date April 16. Unfortunately, the article
+# is no longer available on the site, and I did not make a copy of the
+# text, and I have forgotten to report it here.
+# (Original URL was: http://www.tongaonline.com/news/march162000.htm )
+
+# From Rives McDow (2000-12-01):
+# Tonga is observing DST as of 2000-11-04 and will stop on 2001-01-27.
+
+# From Sione Moala-Mafi (2001-09-20) via Rives McDow:
+# At 2:00am on the first Sunday of November, the standard time in the Kingdom
+# shall be moved forward by one hour to 3:00am. At 2:00am on the last Sunday
+# of January the standard time in the Kingdom shall be moved backward by one
+# hour to 1:00am.
+
+# From Pulu 'Anau (2002-11-05):
+# The law was for 3 years, supposedly to get renewed. It wasn't.
+
+
+# Wake
+
+# From Vernice Anderson, Personal Secretary to Philip Jessup,
+# US Ambassador At Large (oral history interview, 1971-02-02):
+#
+# Saturday, the 14th [of October, 1950] -- ... The time was all the
+# more confusing at that point, because we had crossed the
+# International Date Line, thus getting two Sundays. Furthermore, we
+# discovered that Wake Island had two hours of daylight saving time
+# making calculation of time in Washington difficult if not almost
+# impossible.
+#
+# http://www.trumanlibrary.org/wake/meeting.htm
+
+# From Paul Eggert (2003-03-23):
+# We have no other report of DST in Wake Island, so omit this info for now.
+
+###############################################################################
+
+# The International Date Line
+
+# From Gwillim Law (2000-01-03):
+#
+# The International Date Line is not defined by any international standard,
+# convention, or treaty. Mapmakers are free to draw it as they please.
+# Reputable mapmakers will simply ensure that every point of land appears on
+# the correct side of the IDL, according to the date legally observed there.
+#
+# When Kiribati adopted a uniform date in 1995, thereby moving the Phoenix and
+# Line Islands to the west side of the IDL (or, if you prefer, moving the IDL
+# to the east side of the Phoenix and Line Islands), I suppose that most
+# mapmakers redrew the IDL following the boundary of Kiribati. Even that line
+# has a rather arbitrary nature. The straight-line boundaries between Pacific
+# island nations that are shown on many maps are based on an international
+# convention, but are not legally binding national borders.... The date is
+# governed by the IDL; therefore, even on the high seas, there may be some
+# places as late as fourteen hours later than UTC. And, since the IDL is not
+# an international standard, there are some places on the high seas where the
+# correct date is ambiguous.
+
+# From Wikipedia <http://en.wikipedia.org/wiki/Time_zone> (2005-08-31):
+# Before 1920, all ships kept local apparent time on the high seas by setting
+# their clocks at night or at the morning sight so that, given the ship's
+# speed and direction, it would be 12 o'clock when the Sun crossed the ship's
+# meridian (12 o'clock = local apparent noon). During 1917, at the
+# Anglo-French Conference on Time-keeping at Sea, it was recommended that all
+# ships, both military and civilian, should adopt hourly standard time zones
+# on the high seas. Whenever a ship was within the territorial waters of any
+# nation it would use that nation's standard time. The captain was permitted
+# to change his ship's clocks at a time of his choice following his ship's
+# entry into another zone time--he often chose midnight. These zones were
+# adopted by all major fleets between 1920 and 1925 but not by many
+# independent merchant ships until World War II.
+
+# From Paul Eggert, using references suggested by Oscar van Vlijmen
+# (2005-03-20):
+#
+# The American Practical Navigator (2002)
+# <http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187>
+# talks only about the 180-degree meridian with respect to ships in
+# international waters; it ignores the international date line.
diff --git a/tools/zoneinfo/tzdata2009s/backward b/tools/zoneinfo/tzdata2009s/backward
new file mode 100644
index 0000000..c896968
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/backward
@@ -0,0 +1,116 @@
+# <pre>
+# @(#)backward 8.8
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# This file provides links between current names for time zones
+# and their old names. Many names changed in late 1993.
+
+Link Africa/Asmara Africa/Asmera
+Link Africa/Bamako Africa/Timbuktu
+Link America/Argentina/Catamarca America/Argentina/ComodRivadavia
+Link America/Adak America/Atka
+Link America/Argentina/Buenos_Aires America/Buenos_Aires
+Link America/Argentina/Catamarca America/Catamarca
+Link America/Atikokan America/Coral_Harbour
+Link America/Argentina/Cordoba America/Cordoba
+Link America/Tijuana America/Ensenada
+Link America/Indiana/Indianapolis America/Fort_Wayne
+Link America/Indiana/Indianapolis America/Indianapolis
+Link America/Argentina/Jujuy America/Jujuy
+Link America/Indiana/Knox America/Knox_IN
+Link America/Kentucky/Louisville America/Louisville
+Link America/Argentina/Mendoza America/Mendoza
+Link America/Rio_Branco America/Porto_Acre
+Link America/Argentina/Cordoba America/Rosario
+Link America/St_Thomas America/Virgin
+Link Asia/Ashgabat Asia/Ashkhabad
+Link Asia/Chongqing Asia/Chungking
+Link Asia/Dhaka Asia/Dacca
+Link Asia/Kathmandu Asia/Katmandu
+Link Asia/Kolkata Asia/Calcutta
+Link Asia/Macau Asia/Macao
+Link Asia/Jerusalem Asia/Tel_Aviv
+Link Asia/Ho_Chi_Minh Asia/Saigon
+Link Asia/Thimphu Asia/Thimbu
+Link Asia/Makassar Asia/Ujung_Pandang
+Link Asia/Ulaanbaatar Asia/Ulan_Bator
+Link Atlantic/Faroe Atlantic/Faeroe
+Link Europe/Oslo Atlantic/Jan_Mayen
+Link Australia/Sydney Australia/ACT
+Link Australia/Sydney Australia/Canberra
+Link Australia/Lord_Howe Australia/LHI
+Link Australia/Sydney Australia/NSW
+Link Australia/Darwin Australia/North
+Link Australia/Brisbane Australia/Queensland
+Link Australia/Adelaide Australia/South
+Link Australia/Hobart Australia/Tasmania
+Link Australia/Melbourne Australia/Victoria
+Link Australia/Perth Australia/West
+Link Australia/Broken_Hill Australia/Yancowinna
+Link America/Rio_Branco Brazil/Acre
+Link America/Noronha Brazil/DeNoronha
+Link America/Sao_Paulo Brazil/East
+Link America/Manaus Brazil/West
+Link America/Halifax Canada/Atlantic
+Link America/Winnipeg Canada/Central
+Link America/Regina Canada/East-Saskatchewan
+Link America/Toronto Canada/Eastern
+Link America/Edmonton Canada/Mountain
+Link America/St_Johns Canada/Newfoundland
+Link America/Vancouver Canada/Pacific
+Link America/Regina Canada/Saskatchewan
+Link America/Whitehorse Canada/Yukon
+Link America/Santiago Chile/Continental
+Link Pacific/Easter Chile/EasterIsland
+Link America/Havana Cuba
+Link Africa/Cairo Egypt
+Link Europe/Dublin Eire
+Link Europe/London Europe/Belfast
+Link Europe/Chisinau Europe/Tiraspol
+Link Europe/London GB
+Link Europe/London GB-Eire
+Link Etc/GMT GMT+0
+Link Etc/GMT GMT-0
+Link Etc/GMT GMT0
+Link Etc/GMT Greenwich
+Link Asia/Hong_Kong Hongkong
+Link Atlantic/Reykjavik Iceland
+Link Asia/Tehran Iran
+Link Asia/Jerusalem Israel
+Link America/Jamaica Jamaica
+Link Asia/Tokyo Japan
+Link Pacific/Kwajalein Kwajalein
+Link Africa/Tripoli Libya
+Link America/Tijuana Mexico/BajaNorte
+Link America/Mazatlan Mexico/BajaSur
+Link America/Mexico_City Mexico/General
+Link Pacific/Auckland NZ
+Link Pacific/Chatham NZ-CHAT
+Link America/Denver Navajo
+Link Asia/Shanghai PRC
+Link Pacific/Pago_Pago Pacific/Samoa
+Link Pacific/Truk Pacific/Yap
+Link Europe/Warsaw Poland
+Link Europe/Lisbon Portugal
+Link Asia/Taipei ROC
+Link Asia/Seoul ROK
+Link Asia/Singapore Singapore
+Link Europe/Istanbul Turkey
+Link Etc/UCT UCT
+Link America/Anchorage US/Alaska
+Link America/Adak US/Aleutian
+Link America/Phoenix US/Arizona
+Link America/Chicago US/Central
+Link America/Indiana/Indianapolis US/East-Indiana
+Link America/New_York US/Eastern
+Link Pacific/Honolulu US/Hawaii
+Link America/Indiana/Knox US/Indiana-Starke
+Link America/Detroit US/Michigan
+Link America/Denver US/Mountain
+Link America/Los_Angeles US/Pacific
+Link Pacific/Pago_Pago US/Samoa
+Link Etc/UTC UTC
+Link Etc/UTC Universal
+Link Europe/Moscow W-SU
+Link Etc/UTC Zulu
diff --git a/tools/zoneinfo/tzdata2009s/etcetera b/tools/zoneinfo/tzdata2009s/etcetera
new file mode 100644
index 0000000..5c93682
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/etcetera
@@ -0,0 +1,83 @@
+# <pre>
+# @(#)etcetera 8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# These entries are mostly present for historical reasons, so that
+# people in areas not otherwise covered by the tz files could "zic -l"
+# to a time zone that was right for their area. These days, the
+# tz files cover almost all the inhabited world, and the only practical
+# need now for the entries that are not on UTC are for ships at sea
+# that cannot use POSIX TZ settings.
+
+Zone Etc/GMT 0 - GMT
+Zone Etc/UTC 0 - UTC
+Zone Etc/UCT 0 - UCT
+
+# The following link uses older naming conventions,
+# but it belongs here, not in the file `backward',
+# as functions like gmtime load the "GMT" file to handle leap seconds properly.
+# We want this to work even on installations that omit the other older names.
+Link Etc/GMT GMT
+
+Link Etc/UTC Etc/Universal
+Link Etc/UTC Etc/Zulu
+
+Link Etc/GMT Etc/Greenwich
+Link Etc/GMT Etc/GMT-0
+Link Etc/GMT Etc/GMT+0
+Link Etc/GMT Etc/GMT0
+
+# We use POSIX-style signs in the Zone names and the output abbreviations,
+# even though this is the opposite of what many people expect.
+# POSIX has positive signs west of Greenwich, but many people expect
+# positive signs east of Greenwich. For example, TZ='Etc/GMT+4' uses
+# the abbreviation "GMT+4" and corresponds to 4 hours behind UTC
+# (i.e. west of Greenwich) even though many people would expect it to
+# mean 4 hours ahead of UTC (i.e. east of Greenwich).
+#
+# In the draft 5 of POSIX 1003.1-200x, the angle bracket notation
+# (which is not yet supported by the tz code) allows for
+# TZ='<GMT-4>+4'; if you want time zone abbreviations conforming to
+# ISO 8601 you can use TZ='<-0400>+4'. Thus the commonly-expected
+# offset is kept within the angle bracket (and is used for display)
+# while the POSIX sign is kept outside the angle bracket (and is used
+# for calculation).
+#
+# Do not use a TZ setting like TZ='GMT+4', which is four hours behind
+# GMT but uses the completely misleading abbreviation "GMT".
+
+# Earlier incarnations of this package were not POSIX-compliant,
+# and had lines such as
+# Zone GMT-12 -12 - GMT-1200
+# We did not want things to change quietly if someone accustomed to the old
+# way does a
+# zic -l GMT-12
+# so we moved the names into the Etc subdirectory.
+
+Zone Etc/GMT-14 14 - GMT-14 # 14 hours ahead of GMT
+Zone Etc/GMT-13 13 - GMT-13
+Zone Etc/GMT-12 12 - GMT-12
+Zone Etc/GMT-11 11 - GMT-11
+Zone Etc/GMT-10 10 - GMT-10
+Zone Etc/GMT-9 9 - GMT-9
+Zone Etc/GMT-8 8 - GMT-8
+Zone Etc/GMT-7 7 - GMT-7
+Zone Etc/GMT-6 6 - GMT-6
+Zone Etc/GMT-5 5 - GMT-5
+Zone Etc/GMT-4 4 - GMT-4
+Zone Etc/GMT-3 3 - GMT-3
+Zone Etc/GMT-2 2 - GMT-2
+Zone Etc/GMT-1 1 - GMT-1
+Zone Etc/GMT+1 -1 - GMT+1
+Zone Etc/GMT+2 -2 - GMT+2
+Zone Etc/GMT+3 -3 - GMT+3
+Zone Etc/GMT+4 -4 - GMT+4
+Zone Etc/GMT+5 -5 - GMT+5
+Zone Etc/GMT+6 -6 - GMT+6
+Zone Etc/GMT+7 -7 - GMT+7
+Zone Etc/GMT+8 -8 - GMT+8
+Zone Etc/GMT+9 -9 - GMT+9
+Zone Etc/GMT+10 -10 - GMT+10
+Zone Etc/GMT+11 -11 - GMT+11
+Zone Etc/GMT+12 -12 - GMT+12
diff --git a/tools/zoneinfo/tzdata2009s/europe b/tools/zoneinfo/tzdata2009s/europe
new file mode 100644
index 0000000..66ab880
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/europe
@@ -0,0 +1,2683 @@
+# <pre>
+# @(#)europe 8.24
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# This data is by no means authoritative; if you think you know better,
+# go ahead and edit the file (and please send any changes to
+# tz@elsie.nci.nih.gov for general use in the future).
+
+# From Paul Eggert (2006-03-22):
+# A good source for time zone historical data outside the U.S. is
+# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+# San Diego: ACS Publications, Inc. (2003).
+#
+# Gwillim Law writes that a good source
+# for recent time zone data is the International Air Transport
+# Association's Standard Schedules Information Manual (IATA SSIM),
+# published semiannually. Law sent in several helpful summaries
+# of the IATA's data after 1990.
+#
+# Except where otherwise noted, Shanks & Pottenger is the source for
+# entries through 1991, and IATA SSIM is the source for entries afterwards.
+#
+# Other sources occasionally used include:
+#
+# Edward W. Whitman, World Time Differences,
+# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated),
+# which I found in the UCLA library.
+#
+# <a href="http://www.pettswoodvillage.co.uk/Daylight_Savings_William_Willett.pdf">
+# William Willett, The Waste of Daylight, 19th edition
+# </a> (1914-03)
+#
+# Brazil's Departamento Servico da Hora (DSH),
+# <a href="http://pcdsh01.on.br/HISTHV.htm">
+# History of Summer Time
+# </a> (1998-09-21, in Portuguese)
+
+#
+# I invented the abbreviations marked `*' in the following table;
+# the rest are from earlier versions of this file, or from other sources.
+# Corrections are welcome!
+# std dst 2dst
+# LMT Local Mean Time
+# -4:00 AST ADT Atlantic
+# -3:00 WGT WGST Western Greenland*
+# -1:00 EGT EGST Eastern Greenland*
+# 0:00 GMT BST BDST Greenwich, British Summer
+# 0:00 GMT IST Greenwich, Irish Summer
+# 0:00 WET WEST WEMT Western Europe
+# 0:19:32.13 AMT NST Amsterdam, Netherlands Summer (1835-1937)*
+# 0:20 NET NEST Netherlands (1937-1940)*
+# 1:00 CET CEST CEMT Central Europe
+# 1:00:14 SET Swedish (1879-1899)*
+# 2:00 EET EEST Eastern Europe
+# 3:00 MSK MSD Moscow
+#
+# A reliable and entertaining source about time zones, especially in Britain,
+# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+
+# From Peter Ilieve (1994-12-04),
+# The original six [EU members]: Belgium, France, (West) Germany, Italy,
+# Luxembourg, the Netherlands.
+# Plus, from 1 Jan 73: Denmark, Ireland, United Kingdom.
+# Plus, from 1 Jan 81: Greece.
+# Plus, from 1 Jan 86: Spain, Portugal.
+# Plus, from 1 Jan 95: Austria, Finland, Sweden. (Norway negotiated terms for
+# entry but in a referendum on 28 Nov 94 the people voted No by 52.2% to 47.8%
+# on a turnout of 88.6%. This was almost the same result as Norway's previous
+# referendum in 1972, they are the only country to have said No twice.
+# Referendums in the other three countries voted Yes.)
+# ...
+# Estonia ... uses EU dates but not at 01:00 GMT, they use midnight GMT.
+# I don't think they know yet what they will do from 1996 onwards.
+# ...
+# There shouldn't be any [current members who are not using EU rules].
+# A Directive has the force of law, member states are obliged to enact
+# national law to implement it. The only contentious issue was the
+# different end date for the UK and Ireland, and this was always allowed
+# in the Directive.
+
+
+###############################################################################
+
+# Britain (United Kingdom) and Ireland (Eire)
+
+# From Peter Ilieve (1994-07-06):
+#
+# On 17 Jan 1994 the Independent, a UK quality newspaper, had a piece about
+# historical vistas along the Thames in west London. There was a photo
+# and a sketch map showing some of the sightlines involved. One paragraph
+# of the text said:
+#
+# `An old stone obelisk marking a forgotten terrestrial meridian stands
+# beside the river at Kew. In the 18th century, before time and longitude
+# was standardised by the Royal Observatory in Greenwich, scholars observed
+# this stone and the movement of stars from Kew Observatory nearby. They
+# made their calculations and set the time for the Horse Guards and Parliament,
+# but now the stone is obscured by scrubwood and can only be seen by walking
+# along the towpath within a few yards of it.'
+#
+# I have a one inch to one mile map of London and my estimate of the stone's
+# position is 51 deg. 28' 30" N, 0 deg. 18' 45" W. The longitude should
+# be within about +-2". The Ordnance Survey grid reference is TQ172761.
+#
+# [This yields GMTOFF = -0:01:15 for London LMT in the 18th century.]
+
+# From Paul Eggert (1993-11-18):
+#
+# Howse writes that Britain was the first country to use standard time.
+# The railways cared most about the inconsistencies of local mean time,
+# and it was they who forced a uniform time on the country.
+# The original idea was credited to Dr. William Hyde Wollaston (1766-1828)
+# and was popularized by Abraham Follett Osler (1808-1903).
+# The first railway to adopt London time was the Great Western Railway
+# in November 1840; other railways followed suit, and by 1847 most
+# (though not all) railways used London time. On 1847-09-22 the
+# Railway Clearing House, an industry standards body, recommended that GMT be
+# adopted at all stations as soon as the General Post Office permitted it.
+# The transition occurred on 12-01 for the L&NW, the Caledonian,
+# and presumably other railways; the January 1848 Bradshaw's lists many
+# railways as using GMT. By 1855 the vast majority of public
+# clocks in Britain were set to GMT (though some, like the great clock
+# on Tom Tower at Christ Church, Oxford, were fitted with two minute hands,
+# one for local time and one for GMT). The last major holdout was the legal
+# system, which stubbornly stuck to local time for many years, leading
+# to oddities like polls opening at 08:13 and closing at 16:13.
+# The legal system finally switched to GMT when the Statutes (Definition
+# of Time) Act took effect; it received the Royal Assent on 1880-08-02.
+#
+# In the tables below, we condense this complicated story into a single
+# transition date for London, namely 1847-12-01. We don't know as much
+# about Dublin, so we use 1880-08-02, the legal transition time.
+
+# From Paul Eggert (2003-09-27):
+# Summer Time was first seriously proposed by William Willett (1857-1915),
+# a London builder and member of the Royal Astronomical Society
+# who circulated a pamphlet ``The Waste of Daylight'' (1907)
+# that proposed advancing clocks 20 minutes on each of four Sundays in April,
+# and retarding them by the same amount on four Sundays in September.
+# A bill was drafted in 1909 and introduced in Parliament several times,
+# but it met with ridicule and opposition, especially from farming interests.
+# Later editions of the pamphlet proposed one-hour summer time, and
+# it was eventually adopted as a wartime measure in 1916.
+# See: Summer Time Arrives Early, The Times (2000-05-18).
+# A monument to Willett was unveiled on 1927-05-21, in an open space in
+# a 45-acre wood near Chislehurst, Kent that was purchased by popular
+# subscription and open to the public. On the south face of the monolith,
+# designed by G. W. Miller, is the the William Willett Memorial Sundial,
+# which is permanently set to Summer Time.
+
+# From Winston Churchill (1934-04-28):
+# It is one of the paradoxes of history that we should owe the boon of
+# summer time, which gives every year to the people of this country
+# between 160 and 170 hours more daylight leisure, to a war which
+# plunged Europe into darkness for four years, and shook the
+# foundations of civilization throughout the world.
+# -- <a href="http://www.winstonchurchill.org/fh114willett.htm">
+# "A Silent Toast to William Willett", Pictorial Weekly
+# </a>
+
+# From Paul Eggert (1996-09-03):
+# The OED Supplement says that the English originally said ``Daylight Saving''
+# when they were debating the adoption of DST in 1908; but by 1916 this
+# term appears only in quotes taken from DST's opponents, whereas the
+# proponents (who eventually won the argument) are quoted as using ``Summer''.
+
+# From Arthur David Olson (1989-01-19):
+#
+# A source at the British Information Office in New York avers that it's
+# known as "British" Summer Time in all parts of the United Kingdom.
+
+# Date: 4 Jan 89 08:57:25 GMT (Wed)
+# From: Jonathan Leffler
+# [British Summer Time] is fixed annually by Act of Parliament.
+# If you can predict what Parliament will do, you should be in
+# politics making a fortune, not computing.
+
+# From Chris Carrier (1996-06-14):
+# I remember reading in various wartime issues of the London Times the
+# acronym BDST for British Double Summer Time. Look for the published
+# time of sunrise and sunset in The Times, when BDST was in effect, and
+# if you find a zone reference it will say, "All times B.D.S.T."
+
+# From Joseph S. Myers (1999-09-02):
+# ... some military cables (WO 219/4100 - this is a copy from the
+# main SHAEF archives held in the US National Archives, SHAEF/5252/8/516)
+# agree that the usage is BDST (this appears in a message dated 17 Feb 1945).
+
+# From Joseph S. Myers (2000-10-03):
+# On 18th April 1941, Sir Stephen Tallents of the BBC wrote to Sir
+# Alexander Maxwell of the Home Office asking whether there was any
+# official designation; the reply of the 21st was that there wasn't
+# but he couldn't think of anything better than the "Double British
+# Summer Time" that the BBC had been using informally.
+# http://student.cusu.cam.ac.uk/~jsm28/british-time/bbc-19410418.png
+# http://student.cusu.cam.ac.uk/~jsm28/british-time/ho-19410421.png
+
+# From Sir Alexander Maxwell in the above-mentioned letter (1941-04-21):
+# [N]o official designation has as far as I know been adopted for the time
+# which is to be introduced in May....
+# I cannot think of anything better than "Double British Summer Time"
+# which could not be said to run counter to any official description.
+
+# From Paul Eggert (2000-10-02):
+# Howse writes (p 157) `DBST' too, but `BDST' seems to have been common
+# and follows the more usual convention of putting the location name first,
+# so we use `BDST'.
+
+# Peter Ilieve (1998-04-19) described at length
+# the history of summer time legislation in the United Kingdom.
+# Since 1998 Joseph S. Myers has been updating
+# and extending this list, which can be found in
+# <a href="http://student.cusu.cam.ac.uk/~jsm28/british-time/">
+# History of legal time in Britain
+# </a>
+
+# From Joseph S. Myers (1998-01-06):
+#
+# The legal time in the UK outside of summer time is definitely GMT, not UTC;
+# see Lord Tanlaw's speech
+# <a href="http://www.parliament.the-stationery-office.co.uk/pa/ld199697/ldhansrd/pdvn/lds97/text/70611-20.htm#70611-20_head0">
+# (Lords Hansard 11 June 1997 columns 964 to 976)
+# </a>.
+
+# From Paul Eggert (2006-03-22):
+#
+# For lack of other data, follow Shanks & Pottenger for Eire in 1940-1948.
+#
+# Given Ilieve and Myers's data, the following claims by Shanks & Pottenger
+# are incorrect:
+# * Wales did not switch from GMT to daylight saving time until
+# 1921 Apr 3, when they began to conform with the rest of Great Britain.
+# Actually, Wales was identical after 1880.
+# * Eire had two transitions on 1916 Oct 1.
+# It actually just had one transition.
+# * Northern Ireland used single daylight saving time throughout WW II.
+# Actually, it conformed to Britain.
+# * GB-Eire changed standard time to 1 hour ahead of GMT on 1968-02-18.
+# Actually, that date saw the usual switch to summer time.
+# Standard time was not changed until 1968-10-27 (the clocks didn't change).
+#
+# Here is another incorrect claim by Shanks & Pottenger:
+# * Jersey, Guernsey, and the Isle of Man did not switch from GMT
+# to daylight saving time until 1921 Apr 3, when they began to
+# conform with Great Britain.
+# S.R.&O. 1916, No. 382 and HO 45/10811/312364 (quoted above) say otherwise.
+#
+# The following claim by Shanks & Pottenger is possible though doubtful;
+# we'll ignore it for now.
+# * Dublin's 1971-10-31 switch was at 02:00, even though London's was 03:00.
+#
+#
+# Whitman says Dublin Mean Time was -0:25:21, which is more precise than
+# Shanks & Pottenger.
+# Perhaps this was Dunsink Observatory Time, as Dunsink Observatory
+# (8 km NW of Dublin's center) seemingly was to Dublin as Greenwich was
+# to London. For example:
+#
+# "Timeball on the ballast office is down. Dunsink time."
+# -- James Joyce, Ulysses
+
+# From Joseph S. Myers (2005-01-26):
+# Irish laws are available online at www.irishstatutebook.ie. These include
+# various relating to legal time, for example:
+#
+# ZZA13Y1923.html ZZA12Y1924.html ZZA8Y1925.html ZZSIV20PG1267.html
+#
+# ZZSI71Y1947.html ZZSI128Y1948.html ZZSI23Y1949.html ZZSI41Y1950.html
+# ZZSI27Y1951.html ZZSI73Y1952.html
+#
+# ZZSI11Y1961.html ZZSI232Y1961.html ZZSI182Y1962.html
+# ZZSI167Y1963.html ZZSI257Y1964.html ZZSI198Y1967.html
+# ZZA23Y1968.html ZZA17Y1971.html
+#
+# ZZSI67Y1981.html ZZSI212Y1982.html ZZSI45Y1986.html
+# ZZSI264Y1988.html ZZSI52Y1990.html ZZSI371Y1992.html
+# ZZSI395Y1994.html ZZSI484Y1997.html ZZSI506Y2001.html
+#
+# [These are all relative to the root, e.g., the first is
+# <http://www.irishstatutebook.ie/ZZA13Y1923.html>.]
+#
+# (These are those I found, but there could be more. In any case these
+# should allow various updates to the comments in the europe file to cover
+# the laws applicable in Ireland.)
+#
+# (Note that the time in the Republic of Ireland since 1968 has been defined
+# in terms of standard time being GMT+1 with a period of winter time when it
+# is GMT, rather than standard time being GMT with a period of summer time
+# being GMT+1.)
+
+# From Paul Eggert (1999-03-28):
+# Clive Feather (<news:859845706.26043.0@office.demon.net>, 1997-03-31)
+# reports that Folkestone (Cheriton) Shuttle Terminal uses Concession Time
+# (CT), equivalent to French civil time.
+# Julian Hill (<news:36118128.5A14@virgin.net>, 1998-09-30) reports that
+# trains between Dollands Moor (the freight facility next door)
+# and Frethun run in CT.
+# My admittedly uninformed guess is that the terminal has two authorities,
+# the French concession operators and the British civil authorities,
+# and that the time depends on who you're talking to.
+# If, say, the British police were called to the station for some reason,
+# I would expect the official police report to use GMT/BST and not CET/CEST.
+# This is a borderline case, but for now let's stick to GMT/BST.
+
+# From an anonymous contributor (1996-06-02):
+# The law governing time in Ireland is under Statutory Instrument SI 395/94,
+# which gives force to European Union 7th Council Directive # 94/21/EC.
+# Under this directive, the Minister for Justice in Ireland makes appropriate
+# regulations. I spoke this morning with the Secretary of the Department of
+# Justice (tel +353 1 678 9711) who confirmed to me that the correct name is
+# "Irish Summer Time", abbreviated to "IST".
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+# Summer Time Act, 1916
+Rule GB-Eire 1916 only - May 21 2:00s 1:00 BST
+Rule GB-Eire 1916 only - Oct 1 2:00s 0 GMT
+# S.R.&O. 1917, No. 358
+Rule GB-Eire 1917 only - Apr 8 2:00s 1:00 BST
+Rule GB-Eire 1917 only - Sep 17 2:00s 0 GMT
+# S.R.&O. 1918, No. 274
+Rule GB-Eire 1918 only - Mar 24 2:00s 1:00 BST
+Rule GB-Eire 1918 only - Sep 30 2:00s 0 GMT
+# S.R.&O. 1919, No. 297
+Rule GB-Eire 1919 only - Mar 30 2:00s 1:00 BST
+Rule GB-Eire 1919 only - Sep 29 2:00s 0 GMT
+# S.R.&O. 1920, No. 458
+Rule GB-Eire 1920 only - Mar 28 2:00s 1:00 BST
+# S.R.&O. 1920, No. 1844
+Rule GB-Eire 1920 only - Oct 25 2:00s 0 GMT
+# S.R.&O. 1921, No. 363
+Rule GB-Eire 1921 only - Apr 3 2:00s 1:00 BST
+Rule GB-Eire 1921 only - Oct 3 2:00s 0 GMT
+# S.R.&O. 1922, No. 264
+Rule GB-Eire 1922 only - Mar 26 2:00s 1:00 BST
+Rule GB-Eire 1922 only - Oct 8 2:00s 0 GMT
+# The Summer Time Act, 1922
+Rule GB-Eire 1923 only - Apr Sun>=16 2:00s 1:00 BST
+Rule GB-Eire 1923 1924 - Sep Sun>=16 2:00s 0 GMT
+Rule GB-Eire 1924 only - Apr Sun>=9 2:00s 1:00 BST
+Rule GB-Eire 1925 1926 - Apr Sun>=16 2:00s 1:00 BST
+# The Summer Time Act, 1925
+Rule GB-Eire 1925 1938 - Oct Sun>=2 2:00s 0 GMT
+Rule GB-Eire 1927 only - Apr Sun>=9 2:00s 1:00 BST
+Rule GB-Eire 1928 1929 - Apr Sun>=16 2:00s 1:00 BST
+Rule GB-Eire 1930 only - Apr Sun>=9 2:00s 1:00 BST
+Rule GB-Eire 1931 1932 - Apr Sun>=16 2:00s 1:00 BST
+Rule GB-Eire 1933 only - Apr Sun>=9 2:00s 1:00 BST
+Rule GB-Eire 1934 only - Apr Sun>=16 2:00s 1:00 BST
+Rule GB-Eire 1935 only - Apr Sun>=9 2:00s 1:00 BST
+Rule GB-Eire 1936 1937 - Apr Sun>=16 2:00s 1:00 BST
+Rule GB-Eire 1938 only - Apr Sun>=9 2:00s 1:00 BST
+Rule GB-Eire 1939 only - Apr Sun>=16 2:00s 1:00 BST
+# S.R.&O. 1939, No. 1379
+Rule GB-Eire 1939 only - Nov Sun>=16 2:00s 0 GMT
+# S.R.&O. 1940, No. 172 and No. 1883
+Rule GB-Eire 1940 only - Feb Sun>=23 2:00s 1:00 BST
+# S.R.&O. 1941, No. 476
+Rule GB-Eire 1941 only - May Sun>=2 1:00s 2:00 BDST
+Rule GB-Eire 1941 1943 - Aug Sun>=9 1:00s 1:00 BST
+# S.R.&O. 1942, No. 506
+Rule GB-Eire 1942 1944 - Apr Sun>=2 1:00s 2:00 BDST
+# S.R.&O. 1944, No. 932
+Rule GB-Eire 1944 only - Sep Sun>=16 1:00s 1:00 BST
+# S.R.&O. 1945, No. 312
+Rule GB-Eire 1945 only - Apr Mon>=2 1:00s 2:00 BDST
+Rule GB-Eire 1945 only - Jul Sun>=9 1:00s 1:00 BST
+# S.R.&O. 1945, No. 1208
+Rule GB-Eire 1945 1946 - Oct Sun>=2 2:00s 0 GMT
+Rule GB-Eire 1946 only - Apr Sun>=9 2:00s 1:00 BST
+# The Summer Time Act, 1947
+Rule GB-Eire 1947 only - Mar 16 2:00s 1:00 BST
+Rule GB-Eire 1947 only - Apr 13 1:00s 2:00 BDST
+Rule GB-Eire 1947 only - Aug 10 1:00s 1:00 BST
+Rule GB-Eire 1947 only - Nov 2 2:00s 0 GMT
+# Summer Time Order, 1948 (S.I. 1948/495)
+Rule GB-Eire 1948 only - Mar 14 2:00s 1:00 BST
+Rule GB-Eire 1948 only - Oct 31 2:00s 0 GMT
+# Summer Time Order, 1949 (S.I. 1949/373)
+Rule GB-Eire 1949 only - Apr 3 2:00s 1:00 BST
+Rule GB-Eire 1949 only - Oct 30 2:00s 0 GMT
+# Summer Time Order, 1950 (S.I. 1950/518)
+# Summer Time Order, 1951 (S.I. 1951/430)
+# Summer Time Order, 1952 (S.I. 1952/451)
+Rule GB-Eire 1950 1952 - Apr Sun>=14 2:00s 1:00 BST
+Rule GB-Eire 1950 1952 - Oct Sun>=21 2:00s 0 GMT
+# revert to the rules of the Summer Time Act, 1925
+Rule GB-Eire 1953 only - Apr Sun>=16 2:00s 1:00 BST
+Rule GB-Eire 1953 1960 - Oct Sun>=2 2:00s 0 GMT
+Rule GB-Eire 1954 only - Apr Sun>=9 2:00s 1:00 BST
+Rule GB-Eire 1955 1956 - Apr Sun>=16 2:00s 1:00 BST
+Rule GB-Eire 1957 only - Apr Sun>=9 2:00s 1:00 BST
+Rule GB-Eire 1958 1959 - Apr Sun>=16 2:00s 1:00 BST
+Rule GB-Eire 1960 only - Apr Sun>=9 2:00s 1:00 BST
+# Summer Time Order, 1961 (S.I. 1961/71)
+# Summer Time (1962) Order, 1961 (S.I. 1961/2465)
+# Summer Time Order, 1963 (S.I. 1963/81)
+Rule GB-Eire 1961 1963 - Mar lastSun 2:00s 1:00 BST
+Rule GB-Eire 1961 1968 - Oct Sun>=23 2:00s 0 GMT
+# Summer Time (1964) Order, 1963 (S.I. 1963/2101)
+# Summer Time Order, 1964 (S.I. 1964/1201)
+# Summer Time Order, 1967 (S.I. 1967/1148)
+Rule GB-Eire 1964 1967 - Mar Sun>=19 2:00s 1:00 BST
+# Summer Time Order, 1968 (S.I. 1968/117)
+Rule GB-Eire 1968 only - Feb 18 2:00s 1:00 BST
+# The British Standard Time Act, 1968
+# (no summer time)
+# The Summer Time Act, 1972
+Rule GB-Eire 1972 1980 - Mar Sun>=16 2:00s 1:00 BST
+Rule GB-Eire 1972 1980 - Oct Sun>=23 2:00s 0 GMT
+# Summer Time Order, 1980 (S.I. 1980/1089)
+# Summer Time Order, 1982 (S.I. 1982/1673)
+# Summer Time Order, 1986 (S.I. 1986/223)
+# Summer Time Order, 1988 (S.I. 1988/931)
+Rule GB-Eire 1981 1995 - Mar lastSun 1:00u 1:00 BST
+Rule GB-Eire 1981 1989 - Oct Sun>=23 1:00u 0 GMT
+# Summer Time Order, 1989 (S.I. 1989/985)
+# Summer Time Order, 1992 (S.I. 1992/1729)
+# Summer Time Order 1994 (S.I. 1994/2798)
+Rule GB-Eire 1990 1995 - Oct Sun>=22 1:00u 0 GMT
+# Summer Time Order 1997 (S.I. 1997/2982)
+# See EU for rules starting in 1996.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s
+ 0:00 GB-Eire %s 1968 Oct 27
+ 1:00 - BST 1971 Oct 31 2:00u
+ 0:00 GB-Eire %s 1996
+ 0:00 EU GMT/BST
+Link Europe/London Europe/Jersey
+Link Europe/London Europe/Guernsey
+Link Europe/London Europe/Isle_of_Man
+Zone Europe/Dublin -0:25:00 - LMT 1880 Aug 2
+ -0:25:21 - DMT 1916 May 21 2:00
+ -0:25:21 1:00 IST 1916 Oct 1 2:00s
+ 0:00 GB-Eire %s 1921 Dec 6 # independence
+ 0:00 GB-Eire GMT/IST 1940 Feb 25 2:00
+ 0:00 1:00 IST 1946 Oct 6 2:00
+ 0:00 - GMT 1947 Mar 16 2:00
+ 0:00 1:00 IST 1947 Nov 2 2:00
+ 0:00 - GMT 1948 Apr 18 2:00
+ 0:00 GB-Eire GMT/IST 1968 Oct 27
+ 1:00 - IST 1971 Oct 31 2:00u
+ 0:00 GB-Eire GMT/IST 1996
+ 0:00 EU GMT/IST
+
+###############################################################################
+
+# Europe
+
+# EU rules are for the European Union, previously known as the EC, EEC,
+# Common Market, etc.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule EU 1977 1980 - Apr Sun>=1 1:00u 1:00 S
+Rule EU 1977 only - Sep lastSun 1:00u 0 -
+Rule EU 1978 only - Oct 1 1:00u 0 -
+Rule EU 1979 1995 - Sep lastSun 1:00u 0 -
+Rule EU 1981 max - Mar lastSun 1:00u 1:00 S
+Rule EU 1996 max - Oct lastSun 1:00u 0 -
+# The most recent directive covers the years starting in 2002. See:
+# <a="http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32000L0084:EN:NOT">
+# Directive 2000/84/EC of the European Parliament and of the Council
+# of 19 January 2001 on summer-time arrangements.
+# </a>
+
+# W-Eur differs from EU only in that W-Eur uses standard time.
+Rule W-Eur 1977 1980 - Apr Sun>=1 1:00s 1:00 S
+Rule W-Eur 1977 only - Sep lastSun 1:00s 0 -
+Rule W-Eur 1978 only - Oct 1 1:00s 0 -
+Rule W-Eur 1979 1995 - Sep lastSun 1:00s 0 -
+Rule W-Eur 1981 max - Mar lastSun 1:00s 1:00 S
+Rule W-Eur 1996 max - Oct lastSun 1:00s 0 -
+
+# Older C-Eur rules are for convenience in the tables.
+# From 1977 on, C-Eur differs from EU only in that C-Eur uses standard time.
+Rule C-Eur 1916 only - Apr 30 23:00 1:00 S
+Rule C-Eur 1916 only - Oct 1 1:00 0 -
+Rule C-Eur 1917 1918 - Apr Mon>=15 2:00s 1:00 S
+Rule C-Eur 1917 1918 - Sep Mon>=15 2:00s 0 -
+Rule C-Eur 1940 only - Apr 1 2:00s 1:00 S
+Rule C-Eur 1942 only - Nov 2 2:00s 0 -
+Rule C-Eur 1943 only - Mar 29 2:00s 1:00 S
+Rule C-Eur 1943 only - Oct 4 2:00s 0 -
+Rule C-Eur 1944 1945 - Apr Mon>=1 2:00s 1:00 S
+# Whitman gives 1944 Oct 7; go with Shanks & Pottenger.
+Rule C-Eur 1944 only - Oct 2 2:00s 0 -
+# From Jesper Norgaard Welen (2008-07-13):
+#
+# I found what is probably a typo of 2:00 which should perhaps be 2:00s
+# in the C-Eur rule from tz database version 2008d (this part was
+# corrected in version 2008d). The circumstancial evidence is simply the
+# tz database itself, as seen below:
+#
+# Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
+# 0:00 France WE%sT 1945 Sep 16 3:00
+#
+# Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
+# 0:00 France WE%sT 1945 Sep 16 3:00
+#
+# Zone Europe/Belgrade 1:22:00 - LMT 1884
+# 1:00 1:00 CEST 1945 Sep 16 2:00s
+#
+# Rule France 1945 only - Sep 16 3:00 0 -
+# Rule Belgium 1945 only - Sep 16 2:00s 0 -
+# Rule Neth 1945 only - Sep 16 2:00s 0 -
+#
+# The rule line to be changed is:
+#
+# Rule C-Eur 1945 only - Sep 16 2:00 0 -
+#
+# It seems that Paris, Monaco, Rule France, Rule Belgium all agree on
+# 2:00 standard time, e.g. 3:00 local time. However there are no
+# countries that use C-Eur rules in September 1945, so the only items
+# affected are apparently these ficticious zones that translates acronyms
+# CET and MET:
+#
+# Zone CET 1:00 C-Eur CE%sT
+# Zone MET 1:00 C-Eur ME%sT
+#
+# It this is right then the corrected version would look like:
+#
+# Rule C-Eur 1945 only - Sep 16 2:00s 0 -
+#
+# A small step for mankind though 8-)
+Rule C-Eur 1945 only - Sep 16 2:00s 0 -
+Rule C-Eur 1977 1980 - Apr Sun>=1 2:00s 1:00 S
+Rule C-Eur 1977 only - Sep lastSun 2:00s 0 -
+Rule C-Eur 1978 only - Oct 1 2:00s 0 -
+Rule C-Eur 1979 1995 - Sep lastSun 2:00s 0 -
+Rule C-Eur 1981 max - Mar lastSun 2:00s 1:00 S
+Rule C-Eur 1996 max - Oct lastSun 2:00s 0 -
+
+# E-Eur differs from EU only in that E-Eur switches at midnight local time.
+Rule E-Eur 1977 1980 - Apr Sun>=1 0:00 1:00 S
+Rule E-Eur 1977 only - Sep lastSun 0:00 0 -
+Rule E-Eur 1978 only - Oct 1 0:00 0 -
+Rule E-Eur 1979 1995 - Sep lastSun 0:00 0 -
+Rule E-Eur 1981 max - Mar lastSun 0:00 1:00 S
+Rule E-Eur 1996 max - Oct lastSun 0:00 0 -
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time
+Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time
+Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time
+Rule Russia 1918 only - Sep 16 1:00 1:00 MST
+Rule Russia 1919 only - May 31 23:00 2:00 MDST
+Rule Russia 1919 only - Jul 1 2:00 1:00 S
+Rule Russia 1919 only - Aug 16 0:00 0 -
+Rule Russia 1921 only - Feb 14 23:00 1:00 S
+Rule Russia 1921 only - Mar 20 23:00 2:00 M # Midsummer
+Rule Russia 1921 only - Sep 1 0:00 1:00 S
+Rule Russia 1921 only - Oct 1 0:00 0 -
+# Act No.925 of the Council of Ministers of the USSR (1980-10-24):
+Rule Russia 1981 1984 - Apr 1 0:00 1:00 S
+Rule Russia 1981 1983 - Oct 1 0:00 0 -
+# Act No.967 of the Council of Ministers of the USSR (1984-09-13), repeated in
+# Act No.227 of the Council of Ministers of the USSR (1989-03-14):
+Rule Russia 1984 1991 - Sep lastSun 2:00s 0 -
+Rule Russia 1985 1991 - Mar lastSun 2:00s 1:00 S
+#
+Rule Russia 1992 only - Mar lastSat 23:00 1:00 S
+Rule Russia 1992 only - Sep lastSat 23:00 0 -
+Rule Russia 1993 max - Mar lastSun 2:00s 1:00 S
+Rule Russia 1993 1995 - Sep lastSun 2:00s 0 -
+Rule Russia 1996 max - Oct lastSun 2:00s 0 -
+
+# These are for backward compatibility with older versions.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone WET 0:00 EU WE%sT
+Zone CET 1:00 C-Eur CE%sT
+Zone MET 1:00 C-Eur ME%sT
+Zone EET 2:00 EU EE%sT
+
+# Previous editions of this database used abbreviations like MET DST
+# for Central European Summer Time, but this didn't agree with common usage.
+
+# From Markus Kuhn (1996-07-12):
+# The official German names ... are
+#
+# Mitteleuropaeische Zeit (MEZ) = UTC+01:00
+# Mitteleuropaeische Sommerzeit (MESZ) = UTC+02:00
+#
+# as defined in the German Time Act (Gesetz ueber die Zeitbestimmung (ZeitG),
+# 1978-07-25, Bundesgesetzblatt, Jahrgang 1978, Teil I, S. 1110-1111)....
+# I wrote ... to the German Federal Physical-Technical Institution
+#
+# Physikalisch-Technische Bundesanstalt (PTB)
+# Laboratorium 4.41 "Zeiteinheit"
+# Postfach 3345
+# D-38023 Braunschweig
+# phone: +49 531 592-0
+#
+# ... I received today an answer letter from Dr. Peter Hetzel, head of the PTB
+# department for time and frequency transmission. He explained that the
+# PTB translates MEZ and MESZ into English as
+#
+# Central European Time (CET) = UTC+01:00
+# Central European Summer Time (CEST) = UTC+02:00
+
+
+# Albania
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Albania 1940 only - Jun 16 0:00 1:00 S
+Rule Albania 1942 only - Nov 2 3:00 0 -
+Rule Albania 1943 only - Mar 29 2:00 1:00 S
+Rule Albania 1943 only - Apr 10 3:00 0 -
+Rule Albania 1974 only - May 4 0:00 1:00 S
+Rule Albania 1974 only - Oct 2 0:00 0 -
+Rule Albania 1975 only - May 1 0:00 1:00 S
+Rule Albania 1975 only - Oct 2 0:00 0 -
+Rule Albania 1976 only - May 2 0:00 1:00 S
+Rule Albania 1976 only - Oct 3 0:00 0 -
+Rule Albania 1977 only - May 8 0:00 1:00 S
+Rule Albania 1977 only - Oct 2 0:00 0 -
+Rule Albania 1978 only - May 6 0:00 1:00 S
+Rule Albania 1978 only - Oct 1 0:00 0 -
+Rule Albania 1979 only - May 5 0:00 1:00 S
+Rule Albania 1979 only - Sep 30 0:00 0 -
+Rule Albania 1980 only - May 3 0:00 1:00 S
+Rule Albania 1980 only - Oct 4 0:00 0 -
+Rule Albania 1981 only - Apr 26 0:00 1:00 S
+Rule Albania 1981 only - Sep 27 0:00 0 -
+Rule Albania 1982 only - May 2 0:00 1:00 S
+Rule Albania 1982 only - Oct 3 0:00 0 -
+Rule Albania 1983 only - Apr 18 0:00 1:00 S
+Rule Albania 1983 only - Oct 1 0:00 0 -
+Rule Albania 1984 only - Apr 1 0:00 1:00 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Tirane 1:19:20 - LMT 1914
+ 1:00 - CET 1940 Jun 16
+ 1:00 Albania CE%sT 1984 Jul
+ 1:00 EU CE%sT
+
+# Andorra
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Andorra 0:06:04 - LMT 1901
+ 0:00 - WET 1946 Sep 30
+ 1:00 - CET 1985 Mar 31 2:00
+ 1:00 EU CE%sT
+
+# Austria
+
+# From Paul Eggert (2006-03-22): Shanks & Pottenger give 1918-06-16 and
+# 1945-11-18, but the Austrian Federal Office of Metrology and
+# Surveying (BEV) gives 1918-09-16 and for Vienna gives the "alleged"
+# date of 1945-04-12 with no time. For the 1980-04-06 transition
+# Shanks & Pottenger give 02:00, the BEV 00:00. Go with the BEV,
+# and guess 02:00 for 1945-04-12.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Austria 1920 only - Apr 5 2:00s 1:00 S
+Rule Austria 1920 only - Sep 13 2:00s 0 -
+Rule Austria 1946 only - Apr 14 2:00s 1:00 S
+Rule Austria 1946 1948 - Oct Sun>=1 2:00s 0 -
+Rule Austria 1947 only - Apr 6 2:00s 1:00 S
+Rule Austria 1948 only - Apr 18 2:00s 1:00 S
+Rule Austria 1980 only - Apr 6 0:00 1:00 S
+Rule Austria 1980 only - Sep 28 0:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Vienna 1:05:20 - LMT 1893 Apr
+ 1:00 C-Eur CE%sT 1920
+ 1:00 Austria CE%sT 1940 Apr 1 2:00s
+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
+ 1:00 1:00 CEST 1945 Apr 12 2:00s
+ 1:00 - CET 1946
+ 1:00 Austria CE%sT 1981
+ 1:00 EU CE%sT
+
+# Belarus
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Minsk 1:50:16 - LMT 1880
+ 1:50 - MMT 1924 May 2 # Minsk Mean Time
+ 2:00 - EET 1930 Jun 21
+ 3:00 - MSK 1941 Jun 28
+ 1:00 C-Eur CE%sT 1944 Jul 3
+ 3:00 Russia MSK/MSD 1990
+ 3:00 - MSK 1991 Mar 31 2:00s
+ 2:00 1:00 EEST 1991 Sep 29 2:00s
+ 2:00 - EET 1992 Mar 29 0:00s
+ 2:00 1:00 EEST 1992 Sep 27 0:00s
+ 2:00 Russia EE%sT
+
+# Belgium
+#
+# From Paul Eggert (1997-07-02):
+# Entries from 1918 through 1991 are taken from:
+# Annuaire de L'Observatoire Royal de Belgique,
+# Avenue Circulaire, 3, B-1180 BRUXELLES, CLVIIe annee, 1991
+# (Imprimerie HAYEZ, s.p.r.l., Rue Fin, 4, 1080 BRUXELLES, MCMXC),
+# pp 8-9.
+# LMT before 1892 was 0:17:30, according to the official journal of Belgium:
+# Moniteur Belge, Samedi 30 Avril 1892, N.121.
+# Thanks to Pascal Delmoitie for these references.
+# The 1918 rules are listed for completeness; they apply to unoccupied Belgium.
+# Assume Brussels switched to WET in 1918 when the armistice took effect.
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Belgium 1918 only - Mar 9 0:00s 1:00 S
+Rule Belgium 1918 1919 - Oct Sat>=1 23:00s 0 -
+Rule Belgium 1919 only - Mar 1 23:00s 1:00 S
+Rule Belgium 1920 only - Feb 14 23:00s 1:00 S
+Rule Belgium 1920 only - Oct 23 23:00s 0 -
+Rule Belgium 1921 only - Mar 14 23:00s 1:00 S
+Rule Belgium 1921 only - Oct 25 23:00s 0 -
+Rule Belgium 1922 only - Mar 25 23:00s 1:00 S
+Rule Belgium 1922 1927 - Oct Sat>=1 23:00s 0 -
+Rule Belgium 1923 only - Apr 21 23:00s 1:00 S
+Rule Belgium 1924 only - Mar 29 23:00s 1:00 S
+Rule Belgium 1925 only - Apr 4 23:00s 1:00 S
+# DSH writes that a royal decree of 1926-02-22 specified the Sun following 3rd
+# Sat in Apr (except if it's Easter, in which case it's one Sunday earlier),
+# to Sun following 1st Sat in Oct, and that a royal decree of 1928-09-15
+# changed the transition times to 02:00 GMT.
+Rule Belgium 1926 only - Apr 17 23:00s 1:00 S
+Rule Belgium 1927 only - Apr 9 23:00s 1:00 S
+Rule Belgium 1928 only - Apr 14 23:00s 1:00 S
+Rule Belgium 1928 1938 - Oct Sun>=2 2:00s 0 -
+Rule Belgium 1929 only - Apr 21 2:00s 1:00 S
+Rule Belgium 1930 only - Apr 13 2:00s 1:00 S
+Rule Belgium 1931 only - Apr 19 2:00s 1:00 S
+Rule Belgium 1932 only - Apr 3 2:00s 1:00 S
+Rule Belgium 1933 only - Mar 26 2:00s 1:00 S
+Rule Belgium 1934 only - Apr 8 2:00s 1:00 S
+Rule Belgium 1935 only - Mar 31 2:00s 1:00 S
+Rule Belgium 1936 only - Apr 19 2:00s 1:00 S
+Rule Belgium 1937 only - Apr 4 2:00s 1:00 S
+Rule Belgium 1938 only - Mar 27 2:00s 1:00 S
+Rule Belgium 1939 only - Apr 16 2:00s 1:00 S
+Rule Belgium 1939 only - Nov 19 2:00s 0 -
+Rule Belgium 1940 only - Feb 25 2:00s 1:00 S
+Rule Belgium 1944 only - Sep 17 2:00s 0 -
+Rule Belgium 1945 only - Apr 2 2:00s 1:00 S
+Rule Belgium 1945 only - Sep 16 2:00s 0 -
+Rule Belgium 1946 only - May 19 2:00s 1:00 S
+Rule Belgium 1946 only - Oct 7 2:00s 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Brussels 0:17:30 - LMT 1880
+ 0:17:30 - BMT 1892 May 1 12:00 # Brussels MT
+ 0:00 - WET 1914 Nov 8
+ 1:00 - CET 1916 May 1 0:00
+ 1:00 C-Eur CE%sT 1918 Nov 11 11:00u
+ 0:00 Belgium WE%sT 1940 May 20 2:00s
+ 1:00 C-Eur CE%sT 1944 Sep 3
+ 1:00 Belgium CE%sT 1977
+ 1:00 EU CE%sT
+
+# Bosnia and Herzegovina
+# see Serbia
+
+# Bulgaria
+#
+# From Plamen Simenov via Steffen Thorsen (1999-09-09):
+# A document of Government of Bulgaria (No.94/1997) says:
+# EET --> EETDST is in 03:00 Local time in last Sunday of March ...
+# EETDST --> EET is in 04:00 Local time in last Sunday of October
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Bulg 1979 only - Mar 31 23:00 1:00 S
+Rule Bulg 1979 only - Oct 1 1:00 0 -
+Rule Bulg 1980 1982 - Apr Sat>=1 23:00 1:00 S
+Rule Bulg 1980 only - Sep 29 1:00 0 -
+Rule Bulg 1981 only - Sep 27 2:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Sofia 1:33:16 - LMT 1880
+ 1:56:56 - IMT 1894 Nov 30 # Istanbul MT?
+ 2:00 - EET 1942 Nov 2 3:00
+ 1:00 C-Eur CE%sT 1945
+ 1:00 - CET 1945 Apr 2 3:00
+ 2:00 - EET 1979 Mar 31 23:00
+ 2:00 Bulg EE%sT 1982 Sep 26 2:00
+ 2:00 C-Eur EE%sT 1991
+ 2:00 E-Eur EE%sT 1997
+ 2:00 EU EE%sT
+
+# Croatia
+# see Serbia
+
+# Cyprus
+# Please see the `asia' file for Asia/Nicosia.
+
+# Czech Republic
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Czech 1945 only - Apr 8 2:00s 1:00 S
+Rule Czech 1945 only - Nov 18 2:00s 0 -
+Rule Czech 1946 only - May 6 2:00s 1:00 S
+Rule Czech 1946 1949 - Oct Sun>=1 2:00s 0 -
+Rule Czech 1947 only - Apr 20 2:00s 1:00 S
+Rule Czech 1948 only - Apr 18 2:00s 1:00 S
+Rule Czech 1949 only - Apr 9 2:00s 1:00 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Prague 0:57:44 - LMT 1850
+ 0:57:44 - PMT 1891 Oct # Prague Mean Time
+ 1:00 C-Eur CE%sT 1944 Sep 17 2:00s
+ 1:00 Czech CE%sT 1979
+ 1:00 EU CE%sT
+
+# Denmark, Faroe Islands, and Greenland
+
+# From Jesper Norgaard Welen (2005-04-26):
+# http://www.hum.aau.dk/~poe/tid/tine/DanskTid.htm says that the law
+# [introducing standard time] was in effect from 1894-01-01....
+# The page http://www.retsinfo.dk/_GETDOCI_/ACCN/A18930008330-REGL
+# confirms this, and states that the law was put forth 1893-03-29.
+#
+# The EU treaty with effect from 1973:
+# http://www.retsinfo.dk/_GETDOCI_/ACCN/A19722110030-REGL
+#
+# This provoked a new law from 1974 to make possible summer time changes
+# in subsequenet decrees with the law
+# http://www.retsinfo.dk/_GETDOCI_/ACCN/A19740022330-REGL
+#
+# It seems however that no decree was set forward until 1980. I have
+# not found any decree, but in another related law, the effecting DST
+# changes are stated explicitly to be from 1980-04-06 at 02:00 to
+# 1980-09-28 at 02:00. If this is true, this differs slightly from
+# the EU rule in that DST runs to 02:00, not 03:00. We don't know
+# when Denmark began using the EU rule correctly, but we have only
+# confirmation of the 1980-time, so I presume it was correct in 1981:
+# The law is about the management of the extra hour, concerning
+# working hours reported and effect on obligatory-rest rules (which
+# was suspended on that night):
+# http://www.retsinfo.dk/_GETDOCI_/ACCN/C19801120554-REGL
+
+# From Jesper Norgaard Welen (2005-06-11):
+# The Herning Folkeblad (1980-09-26) reported that the night between
+# Saturday and Sunday the clock is set back from three to two.
+
+# From Paul Eggert (2005-06-11):
+# Hence the "02:00" of the 1980 law refers to standard time, not
+# wall-clock time, and so the EU rules were in effect in 1980.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Denmark 1916 only - May 14 23:00 1:00 S
+Rule Denmark 1916 only - Sep 30 23:00 0 -
+Rule Denmark 1940 only - May 15 0:00 1:00 S
+Rule Denmark 1945 only - Apr 2 2:00s 1:00 S
+Rule Denmark 1945 only - Aug 15 2:00s 0 -
+Rule Denmark 1946 only - May 1 2:00s 1:00 S
+Rule Denmark 1946 only - Sep 1 2:00s 0 -
+Rule Denmark 1947 only - May 4 2:00s 1:00 S
+Rule Denmark 1947 only - Aug 10 2:00s 0 -
+Rule Denmark 1948 only - May 9 2:00s 1:00 S
+Rule Denmark 1948 only - Aug 8 2:00s 0 -
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Copenhagen 0:50:20 - LMT 1890
+ 0:50:20 - CMT 1894 Jan 1 # Copenhagen MT
+ 1:00 Denmark CE%sT 1942 Nov 2 2:00s
+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00
+ 1:00 Denmark CE%sT 1980
+ 1:00 EU CE%sT
+Zone Atlantic/Faroe -0:27:04 - LMT 1908 Jan 11 # Torshavn
+ 0:00 - WET 1981
+ 0:00 EU WE%sT
+#
+# From Paul Eggert (2004-10-31):
+# During World War II, Germany maintained secret manned weather stations in
+# East Greenland and Franz Josef Land, but we don't know their time zones.
+# My source for this is Wilhelm Dege's book mentioned under Svalbard.
+#
+# From Paul Eggert (2006-03-22):
+# Greenland joined the EU as part of Denmark, obtained home rule on 1979-05-01,
+# and left the EU on 1985-02-01. It therefore should have been using EU
+# rules at least through 1984. Shanks & Pottenger say Scoresbysund and Godthab
+# used C-Eur rules after 1980, but IATA SSIM (1991/1996) says they use EU
+# rules since at least 1991. Assume EU rules since 1980.
+
+# From Gwillin Law (2001-06-06), citing
+# <http://www.statkart.no/efs/efshefter/2001/efs5-2001.pdf> (2001-03-15),
+# and with translations corrected by Steffen Thorsen:
+#
+# Greenland has four local times, and the relation to UTC
+# is according to the following time line:
+#
+# The military zone near Thule UTC-4
+# Standard Greenland time UTC-3
+# Scoresbysund UTC-1
+# Danmarkshavn UTC
+#
+# In the military area near Thule and in Danmarkshavn DST will not be
+# introduced.
+
+# From Rives McDow (2001-11-01):
+#
+# I correspond regularly with the Dansk Polarcenter, and wrote them at
+# the time to clarify the situation in Thule. Unfortunately, I have
+# not heard back from them regarding my recent letter. [But I have
+# info from earlier correspondence.]
+#
+# According to the center, a very small local time zone around Thule
+# Air Base keeps the time according to UTC-4, implementing daylight
+# savings using North America rules, changing the time at 02:00 local time....
+#
+# The east coast of Greenland north of the community of Scoresbysund
+# uses UTC in the same way as in Iceland, year round, with no dst.
+# There are just a few stations on this coast, including the
+# Danmarkshavn ICAO weather station mentioned in your September 29th
+# email. The other stations are two sledge patrol stations in
+# Mestersvig and Daneborg, the air force base at Station Nord, and the
+# DPC research station at Zackenberg.
+#
+# Scoresbysund and two small villages nearby keep time UTC-1 and use
+# the same daylight savings time period as in West Greenland (Godthab).
+#
+# The rest of Greenland, including Godthab (this area, although it
+# includes central Greenland, is known as west Greenland), keeps time
+# UTC-3, with daylight savings methods according to European rules.
+#
+# It is common procedure to use UTC 0 in the wilderness of East and
+# North Greenland, because it is mainly Icelandic aircraft operators
+# maintaining traffic in these areas. However, the official status of
+# this area is that it sticks with Godthab time. This area might be
+# considered a dual time zone in some respects because of this.
+
+# From Rives McDow (2001-11-19):
+# I heard back from someone stationed at Thule; the time change took place
+# there at 2:00 AM.
+
+# From Paul Eggert (2006-03-22):
+# From 1997 on the CIA map shows Danmarkshavn on GMT;
+# the 1995 map as like Godthab.
+# For lack of better info, assume they were like Godthab before 1996.
+# startkart.no says Thule does not observe DST, but this is clearly an error,
+# so go with Shanks & Pottenger for Thule transitions until this year.
+# For 2007 on assume Thule will stay in sync with US DST rules.
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Thule 1991 1992 - Mar lastSun 2:00 1:00 D
+Rule Thule 1991 1992 - Sep lastSun 2:00 0 S
+Rule Thule 1993 2006 - Apr Sun>=1 2:00 1:00 D
+Rule Thule 1993 2006 - Oct lastSun 2:00 0 S
+Rule Thule 2007 max - Mar Sun>=8 2:00 1:00 D
+Rule Thule 2007 max - Nov Sun>=1 2:00 0 S
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Danmarkshavn -1:14:40 - LMT 1916 Jul 28
+ -3:00 - WGT 1980 Apr 6 2:00
+ -3:00 EU WG%sT 1996
+ 0:00 - GMT
+Zone America/Scoresbysund -1:27:52 - LMT 1916 Jul 28 # Ittoqqortoormiit
+ -2:00 - CGT 1980 Apr 6 2:00
+ -2:00 C-Eur CG%sT 1981 Mar 29
+ -1:00 EU EG%sT
+Zone America/Godthab -3:26:56 - LMT 1916 Jul 28 # Nuuk
+ -3:00 - WGT 1980 Apr 6 2:00
+ -3:00 EU WG%sT
+Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pituffik air base
+ -4:00 Thule A%sT
+
+# Estonia
+# From Peter Ilieve (1994-10-15):
+# A relative in Tallinn confirms the accuracy of the data for 1989 onwards
+# [through 1994] and gives the legal authority for it,
+# a regulation of the Government of Estonia, No. 111 of 1989....
+#
+# From Peter Ilieve (1996-10-28):
+# [IATA SSIM (1992/1996) claims that the Baltic republics switch at 01:00s,
+# but a relative confirms that Estonia still switches at 02:00s, writing:]
+# ``I do not [know] exactly but there are some little different
+# (confusing) rules for International Air and Railway Transport Schedules
+# conversion in Sunday connected with end of summer time in Estonia....
+# A discussion is running about the summer time efficiency and effect on
+# human physiology. It seems that Estonia maybe will not change to
+# summer time next spring.''
+
+# From Peter Ilieve (1998-11-04), heavily edited:
+# <a href="http://trip.rk.ee/cgi-bin/thw?${BASE}=akt&${OOHTML}=rtd&TA=1998&TO=1&AN=1390">
+# The 1998-09-22 Estonian time law
+# </a>
+# refers to the Eighth Directive and cites the association agreement between
+# the EU and Estonia, ratified by the Estonian law (RT II 1995, 22--27, 120).
+#
+# I also asked [my relative] whether they use any standard abbreviation
+# for their standard and summer times. He says no, they use "suveaeg"
+# (summer time) and "talveaeg" (winter time).
+
+# From <a href="http://www.baltictimes.com/">The Baltic Times</a> (1999-09-09)
+# via Steffen Thorsen:
+# This year will mark the last time Estonia shifts to summer time,
+# a council of the ruling coalition announced Sept. 6....
+# But what this could mean for Estonia's chances of joining the European
+# Union are still unclear. In 1994, the EU declared summer time compulsory
+# for all member states until 2001. Brussels has yet to decide what to do
+# after that.
+
+# From Mart Oruaas (2000-01-29):
+# Regulation no. 301 (1999-10-12) obsoletes previous regulation
+# no. 206 (1998-09-22) and thus sticks Estonia to +02:00 GMT for all
+# the year round. The regulation is effective 1999-11-01.
+
+# From Toomas Soome (2002-02-21):
+# The Estonian government has changed once again timezone politics.
+# Now we are using again EU rules.
+#
+# From Urmet Jaanes (2002-03-28):
+# The legislative reference is Government decree No. 84 on 2002-02-21.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Tallinn 1:39:00 - LMT 1880
+ 1:39:00 - TMT 1918 Feb # Tallinn Mean Time
+ 1:00 C-Eur CE%sT 1919 Jul
+ 1:39:00 - TMT 1921 May
+ 2:00 - EET 1940 Aug 6
+ 3:00 - MSK 1941 Sep 15
+ 1:00 C-Eur CE%sT 1944 Sep 22
+ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
+ 2:00 1:00 EEST 1989 Sep 24 2:00s
+ 2:00 C-Eur EE%sT 1998 Sep 22
+ 2:00 EU EE%sT 1999 Nov 1
+ 2:00 - EET 2002 Feb 21
+ 2:00 EU EE%sT
+
+# Finland
+#
+# From Hannu Strang (1994-09-25 06:03:37 UTC):
+# Well, here in Helsinki we're just changing from summer time to regular one,
+# and it's supposed to change at 4am...
+#
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger say Finland has switched at 02:00 standard time
+# since 1981. Go with Strang instead.
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Finland 1942 only - Apr 3 0:00 1:00 S
+Rule Finland 1942 only - Oct 3 0:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Helsinki 1:39:52 - LMT 1878 May 31
+ 1:39:52 - HMT 1921 May # Helsinki Mean Time
+ 2:00 Finland EE%sT 1981 Mar 29 2:00
+ 2:00 EU EE%sT
+
+# Aaland Is
+Link Europe/Helsinki Europe/Mariehamn
+
+
+# France
+
+# From Ciro Discepolo (2000-12-20):
+#
+# Henri Le Corre, Regimes Horaires pour le monde entier, Editions
+# Traditionnelles - Paris 2 books, 1993
+#
+# Gabriel, Traite de l'heure dans le monde, Guy Tredaniel editeur,
+# Paris, 1991
+#
+# Francoise Gauquelin, Problemes de l'heure resolus en astrologie,
+# Guy tredaniel, Paris 1987
+
+
+#
+# Shank & Pottenger seem to use `24:00' ambiguously; resolve it with Whitman.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule France 1916 only - Jun 14 23:00s 1:00 S
+Rule France 1916 1919 - Oct Sun>=1 23:00s 0 -
+Rule France 1917 only - Mar 24 23:00s 1:00 S
+Rule France 1918 only - Mar 9 23:00s 1:00 S
+Rule France 1919 only - Mar 1 23:00s 1:00 S
+Rule France 1920 only - Feb 14 23:00s 1:00 S
+Rule France 1920 only - Oct 23 23:00s 0 -
+Rule France 1921 only - Mar 14 23:00s 1:00 S
+Rule France 1921 only - Oct 25 23:00s 0 -
+Rule France 1922 only - Mar 25 23:00s 1:00 S
+# DSH writes that a law of 1923-05-24 specified 3rd Sat in Apr at 23:00 to 1st
+# Sat in Oct at 24:00; and that in 1930, because of Easter, the transitions
+# were Apr 12 and Oct 5. Go with Shanks & Pottenger.
+Rule France 1922 1938 - Oct Sat>=1 23:00s 0 -
+Rule France 1923 only - May 26 23:00s 1:00 S
+Rule France 1924 only - Mar 29 23:00s 1:00 S
+Rule France 1925 only - Apr 4 23:00s 1:00 S
+Rule France 1926 only - Apr 17 23:00s 1:00 S
+Rule France 1927 only - Apr 9 23:00s 1:00 S
+Rule France 1928 only - Apr 14 23:00s 1:00 S
+Rule France 1929 only - Apr 20 23:00s 1:00 S
+Rule France 1930 only - Apr 12 23:00s 1:00 S
+Rule France 1931 only - Apr 18 23:00s 1:00 S
+Rule France 1932 only - Apr 2 23:00s 1:00 S
+Rule France 1933 only - Mar 25 23:00s 1:00 S
+Rule France 1934 only - Apr 7 23:00s 1:00 S
+Rule France 1935 only - Mar 30 23:00s 1:00 S
+Rule France 1936 only - Apr 18 23:00s 1:00 S
+Rule France 1937 only - Apr 3 23:00s 1:00 S
+Rule France 1938 only - Mar 26 23:00s 1:00 S
+Rule France 1939 only - Apr 15 23:00s 1:00 S
+Rule France 1939 only - Nov 18 23:00s 0 -
+Rule France 1940 only - Feb 25 2:00 1:00 S
+# The French rules for 1941-1944 were not used in Paris, but Shanks & Pottenger
+# write that they were used in Monaco and in many French locations.
+# Le Corre writes that the upper limit of the free zone was Arneguy, Orthez,
+# Mont-de-Marsan, Bazas, Langon, Lamotte-Montravel, Marouil, La
+# Rochefoucault, Champagne-Mouton, La Roche-Posay, La Haye-Decartes,
+# Loches, Montrichard, Vierzon, Bourges, Moulins, Digoin,
+# Paray-le-Monial, Montceau-les-Mines, Chalons-sur-Saone, Arbois,
+# Dole, Morez, St-Claude, and Collognes (Haute-Savioe).
+Rule France 1941 only - May 5 0:00 2:00 M # Midsummer
+# Shanks & Pottenger say this transition occurred at Oct 6 1:00,
+# but go with Denis Excoffier (1997-12-12),
+# who quotes the Ephemerides Astronomiques for 1998 from Bureau des Longitudes
+# as saying 5/10/41 22hUT.
+Rule France 1941 only - Oct 6 0:00 1:00 S
+Rule France 1942 only - Mar 9 0:00 2:00 M
+Rule France 1942 only - Nov 2 3:00 1:00 S
+Rule France 1943 only - Mar 29 2:00 2:00 M
+Rule France 1943 only - Oct 4 3:00 1:00 S
+Rule France 1944 only - Apr 3 2:00 2:00 M
+Rule France 1944 only - Oct 8 1:00 1:00 S
+Rule France 1945 only - Apr 2 2:00 2:00 M
+Rule France 1945 only - Sep 16 3:00 0 -
+# Shanks & Pottenger give Mar 28 2:00 and Sep 26 3:00;
+# go with Excoffier's 28/3/76 0hUT and 25/9/76 23hUT.
+Rule France 1976 only - Mar 28 1:00 1:00 S
+Rule France 1976 only - Sep 26 1:00 0 -
+# Shanks & Pottenger give 0:09:20 for Paris Mean Time, and Whitman 0:09:05,
+# but Howse quotes the actual French legislation as saying 0:09:21.
+# Go with Howse. Howse writes that the time in France was officially based
+# on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
+ 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT
+# Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre.
+ 0:00 France WE%sT 1940 Jun 14 23:00
+# Le Corre says Paris stuck with occupied-France time after the liberation;
+# go with Shanks & Pottenger.
+ 1:00 C-Eur CE%sT 1944 Aug 25
+ 0:00 France WE%sT 1945 Sep 16 3:00
+ 1:00 France CE%sT 1977
+ 1:00 EU CE%sT
+
+# Germany
+
+# From Markus Kuhn (1998-09-29):
+# The German time zone web site by the Physikalisch-Technische
+# Bundesanstalt contains DST information back to 1916.
+# [See tz-link.htm for the URL.]
+
+# From Joerg Schilling (2002-10-23):
+# In 1945, Berlin was switched to Moscow Summer time (GMT+4) by
+# <a href="http://www.dhm.de/lemo/html/biografien/BersarinNikolai/">
+# General [Nikolai] Bersarin</a>.
+
+# From Paul Eggert (2003-03-08):
+# <a href="http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf">
+# http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf
+# </a>
+# says that Bersarin issued an order to use Moscow time on May 20.
+# However, Moscow did not observe daylight saving in 1945, so
+# this was equivalent to CEMT (GMT+3), not GMT+4.
+
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Germany 1946 only - Apr 14 2:00s 1:00 S
+Rule Germany 1946 only - Oct 7 2:00s 0 -
+Rule Germany 1947 1949 - Oct Sun>=1 2:00s 0 -
+# http://www.ptb.de/de/org/4/44/441/salt.htm says the following transition
+# occurred at 3:00 MEZ, not the 2:00 MEZ given in Shanks & Pottenger.
+# Go with the PTB.
+Rule Germany 1947 only - Apr 6 3:00s 1:00 S
+Rule Germany 1947 only - May 11 2:00s 2:00 M
+Rule Germany 1947 only - Jun 29 3:00 1:00 S
+Rule Germany 1948 only - Apr 18 2:00s 1:00 S
+Rule Germany 1949 only - Apr 10 2:00s 1:00 S
+
+Rule SovietZone 1945 only - May 24 2:00 2:00 M # Midsummer
+Rule SovietZone 1945 only - Sep 24 3:00 1:00 S
+Rule SovietZone 1945 only - Nov 18 2:00s 0 -
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Berlin 0:53:28 - LMT 1893 Apr
+ 1:00 C-Eur CE%sT 1945 May 24 2:00
+ 1:00 SovietZone CE%sT 1946
+ 1:00 Germany CE%sT 1980
+ 1:00 EU CE%sT
+
+# Georgia
+# Please see the "asia" file for Asia/Tbilisi.
+# Herodotus (Histories, IV.45) says Georgia north of the Phasis (now Rioni)
+# is in Europe. Our reference location Tbilisi is in the Asian part.
+
+# Gibraltar
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2 0:00s
+ 0:00 GB-Eire %s 1957 Apr 14 2:00
+ 1:00 - CET 1982
+ 1:00 EU CE%sT
+
+# Greece
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+# Whitman gives 1932 Jul 5 - Nov 1; go with Shanks & Pottenger.
+Rule Greece 1932 only - Jul 7 0:00 1:00 S
+Rule Greece 1932 only - Sep 1 0:00 0 -
+# Whitman gives 1941 Apr 25 - ?; go with Shanks & Pottenger.
+Rule Greece 1941 only - Apr 7 0:00 1:00 S
+# Whitman gives 1942 Feb 2 - ?; go with Shanks & Pottenger.
+Rule Greece 1942 only - Nov 2 3:00 0 -
+Rule Greece 1943 only - Mar 30 0:00 1:00 S
+Rule Greece 1943 only - Oct 4 0:00 0 -
+# Whitman gives 1944 Oct 3 - Oct 31; go with Shanks & Pottenger.
+Rule Greece 1952 only - Jul 1 0:00 1:00 S
+Rule Greece 1952 only - Nov 2 0:00 0 -
+Rule Greece 1975 only - Apr 12 0:00s 1:00 S
+Rule Greece 1975 only - Nov 26 0:00s 0 -
+Rule Greece 1976 only - Apr 11 2:00s 1:00 S
+Rule Greece 1976 only - Oct 10 2:00s 0 -
+Rule Greece 1977 1978 - Apr Sun>=1 2:00s 1:00 S
+Rule Greece 1977 only - Sep 26 2:00s 0 -
+Rule Greece 1978 only - Sep 24 4:00 0 -
+Rule Greece 1979 only - Apr 1 9:00 1:00 S
+Rule Greece 1979 only - Sep 29 2:00 0 -
+Rule Greece 1980 only - Apr 1 0:00 1:00 S
+Rule Greece 1980 only - Sep 28 0:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Athens 1:34:52 - LMT 1895 Sep 14
+ 1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT
+ 2:00 Greece EE%sT 1941 Apr 30
+ 1:00 Greece CE%sT 1944 Apr 4
+ 2:00 Greece EE%sT 1981
+ # Shanks & Pottenger say it switched to C-Eur in 1981;
+ # go with EU instead, since Greece joined it on Jan 1.
+ 2:00 EU EE%sT
+
+# Hungary
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Hungary 1918 only - Apr 1 3:00 1:00 S
+Rule Hungary 1918 only - Sep 29 3:00 0 -
+Rule Hungary 1919 only - Apr 15 3:00 1:00 S
+Rule Hungary 1919 only - Sep 15 3:00 0 -
+Rule Hungary 1920 only - Apr 5 3:00 1:00 S
+Rule Hungary 1920 only - Sep 30 3:00 0 -
+Rule Hungary 1945 only - May 1 23:00 1:00 S
+Rule Hungary 1945 only - Nov 3 0:00 0 -
+Rule Hungary 1946 only - Mar 31 2:00s 1:00 S
+Rule Hungary 1946 1949 - Oct Sun>=1 2:00s 0 -
+Rule Hungary 1947 1949 - Apr Sun>=4 2:00s 1:00 S
+Rule Hungary 1950 only - Apr 17 2:00s 1:00 S
+Rule Hungary 1950 only - Oct 23 2:00s 0 -
+Rule Hungary 1954 1955 - May 23 0:00 1:00 S
+Rule Hungary 1954 1955 - Oct 3 0:00 0 -
+Rule Hungary 1956 only - Jun Sun>=1 0:00 1:00 S
+Rule Hungary 1956 only - Sep lastSun 0:00 0 -
+Rule Hungary 1957 only - Jun Sun>=1 1:00 1:00 S
+Rule Hungary 1957 only - Sep lastSun 3:00 0 -
+Rule Hungary 1980 only - Apr 6 1:00 1:00 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Budapest 1:16:20 - LMT 1890 Oct
+ 1:00 C-Eur CE%sT 1918
+ 1:00 Hungary CE%sT 1941 Apr 6 2:00
+ 1:00 C-Eur CE%sT 1945
+ 1:00 Hungary CE%sT 1980 Sep 28 2:00s
+ 1:00 EU CE%sT
+
+# Iceland
+#
+# From Adam David (1993-11-06):
+# The name of the timezone in Iceland for system / mail / news purposes is GMT.
+#
+# (1993-12-05):
+# This material is paraphrased from the 1988 edition of the University of
+# Iceland Almanak.
+#
+# From January 1st, 1908 the whole of Iceland was standardised at 1 hour
+# behind GMT. Previously, local mean solar time was used in different parts
+# of Iceland, the almanak had been based on Reykjavik mean solar time which
+# was 1 hour and 28 minutes behind GMT.
+#
+# "first day of winter" referred to [below] means the first day of the 26 weeks
+# of winter, according to the old icelandic calendar that dates back to the
+# time the norsemen first settled Iceland. The first day of winter is always
+# Saturday, but is not dependent on the Julian or Gregorian calendars.
+#
+# (1993-12-10):
+# I have a reference from the Oxford Icelandic-English dictionary for the
+# beginning of winter, which ties it to the ecclesiastical calendar (and thus
+# to the julian/gregorian calendar) over the period in question.
+# the winter begins on the Saturday next before St. Luke's day
+# (old style), or on St. Luke's day, if a Saturday.
+# St. Luke's day ought to be traceable from ecclesiastical sources. "old style"
+# might be a reference to the Julian calendar as opposed to Gregorian, or it
+# might mean something else (???).
+#
+# From Paul Eggert (2006-03-22):
+# The Iceland Almanak, Shanks & Pottenger, and Whitman disagree on many points.
+# We go with the Almanak, except for one claim from Shanks & Pottenger, namely
+# that Reykavik was 21W57 from 1837 to 1908, local mean time before that.
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Iceland 1917 1918 - Feb 19 23:00 1:00 S
+Rule Iceland 1917 only - Oct 21 1:00 0 -
+Rule Iceland 1918 only - Nov 16 1:00 0 -
+Rule Iceland 1939 only - Apr 29 23:00 1:00 S
+Rule Iceland 1939 only - Nov 29 2:00 0 -
+Rule Iceland 1940 only - Feb 25 2:00 1:00 S
+Rule Iceland 1940 only - Nov 3 2:00 0 -
+Rule Iceland 1941 only - Mar 2 1:00s 1:00 S
+Rule Iceland 1941 only - Nov 2 1:00s 0 -
+Rule Iceland 1942 only - Mar 8 1:00s 1:00 S
+Rule Iceland 1942 only - Oct 25 1:00s 0 -
+# 1943-1946 - first Sunday in March until first Sunday in winter
+Rule Iceland 1943 1946 - Mar Sun>=1 1:00s 1:00 S
+Rule Iceland 1943 1948 - Oct Sun>=22 1:00s 0 -
+# 1947-1967 - first Sunday in April until first Sunday in winter
+Rule Iceland 1947 1967 - Apr Sun>=1 1:00s 1:00 S
+# 1949 Oct transition delayed by 1 week
+Rule Iceland 1949 only - Oct 30 1:00s 0 -
+Rule Iceland 1950 1966 - Oct Sun>=22 1:00s 0 -
+Rule Iceland 1967 only - Oct 29 1:00s 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Atlantic/Reykjavik -1:27:24 - LMT 1837
+ -1:27:48 - RMT 1908 # Reykjavik Mean Time?
+ -1:00 Iceland IS%sT 1968 Apr 7 1:00s
+ 0:00 - GMT
+
+# Italy
+#
+# From Paul Eggert (2001-03-06):
+# Sicily and Sardinia each had their own time zones from 1866 to 1893,
+# called Palermo Time (+00:53:28) and Cagliari Time (+00:36:32).
+# During World War II, German-controlled Italy used German time.
+# But these events all occurred before the 1970 cutoff,
+# so record only the time in Rome.
+#
+# From Paul Eggert (2006-03-22):
+# For Italian DST we have three sources: Shanks & Pottenger, Whitman, and
+# F. Pollastri
+# <a href="http://toi.iriti.cnr.it/uk/ienitlt.html">
+# Day-light Saving Time in Italy (2006-02-03)
+# </a>
+# (`FP' below), taken from an Italian National Electrotechnical Institute
+# publication. When the three sources disagree, guess who's right, as follows:
+#
+# year FP Shanks&P. (S) Whitman (W) Go with:
+# 1916 06-03 06-03 24:00 06-03 00:00 FP & W
+# 09-30 09-30 24:00 09-30 01:00 FP; guess 24:00s
+# 1917 04-01 03-31 24:00 03-31 00:00 FP & S
+# 09-30 09-29 24:00 09-30 01:00 FP & W
+# 1918 03-09 03-09 24:00 03-09 00:00 FP & S
+# 10-06 10-05 24:00 10-06 01:00 FP & W
+# 1919 03-01 03-01 24:00 03-01 00:00 FP & S
+# 10-04 10-04 24:00 10-04 01:00 FP; guess 24:00s
+# 1920 03-20 03-20 24:00 03-20 00:00 FP & S
+# 09-18 09-18 24:00 10-01 01:00 FP; guess 24:00s
+# 1944 04-02 04-03 02:00 S (see C-Eur)
+# 09-16 10-02 03:00 FP; guess 24:00s
+# 1945 09-14 09-16 24:00 FP; guess 24:00s
+# 1970 05-21 05-31 00:00 S
+# 09-20 09-27 00:00 S
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Italy 1916 only - Jun 3 0:00s 1:00 S
+Rule Italy 1916 only - Oct 1 0:00s 0 -
+Rule Italy 1917 only - Apr 1 0:00s 1:00 S
+Rule Italy 1917 only - Sep 30 0:00s 0 -
+Rule Italy 1918 only - Mar 10 0:00s 1:00 S
+Rule Italy 1918 1919 - Oct Sun>=1 0:00s 0 -
+Rule Italy 1919 only - Mar 2 0:00s 1:00 S
+Rule Italy 1920 only - Mar 21 0:00s 1:00 S
+Rule Italy 1920 only - Sep 19 0:00s 0 -
+Rule Italy 1940 only - Jun 15 0:00s 1:00 S
+Rule Italy 1944 only - Sep 17 0:00s 0 -
+Rule Italy 1945 only - Apr 2 2:00 1:00 S
+Rule Italy 1945 only - Sep 15 0:00s 0 -
+Rule Italy 1946 only - Mar 17 2:00s 1:00 S
+Rule Italy 1946 only - Oct 6 2:00s 0 -
+Rule Italy 1947 only - Mar 16 0:00s 1:00 S
+Rule Italy 1947 only - Oct 5 0:00s 0 -
+Rule Italy 1948 only - Feb 29 2:00s 1:00 S
+Rule Italy 1948 only - Oct 3 2:00s 0 -
+Rule Italy 1966 1968 - May Sun>=22 0:00 1:00 S
+Rule Italy 1966 1969 - Sep Sun>=22 0:00 0 -
+Rule Italy 1969 only - Jun 1 0:00 1:00 S
+Rule Italy 1970 only - May 31 0:00 1:00 S
+Rule Italy 1970 only - Sep lastSun 0:00 0 -
+Rule Italy 1971 1972 - May Sun>=22 0:00 1:00 S
+Rule Italy 1971 only - Sep lastSun 1:00 0 -
+Rule Italy 1972 only - Oct 1 0:00 0 -
+Rule Italy 1973 only - Jun 3 0:00 1:00 S
+Rule Italy 1973 1974 - Sep lastSun 0:00 0 -
+Rule Italy 1974 only - May 26 0:00 1:00 S
+Rule Italy 1975 only - Jun 1 0:00s 1:00 S
+Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
+Rule Italy 1976 only - May 30 0:00s 1:00 S
+Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
+Rule Italy 1978 only - Oct 1 0:00s 0 -
+Rule Italy 1979 only - Sep 30 0:00s 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Rome 0:49:56 - LMT 1866 Sep 22
+ 0:49:56 - RMT 1893 Nov 1 0:00s # Rome Mean
+ 1:00 Italy CE%sT 1942 Nov 2 2:00s
+ 1:00 C-Eur CE%sT 1944 Jul
+ 1:00 Italy CE%sT 1980
+ 1:00 EU CE%sT
+
+Link Europe/Rome Europe/Vatican
+Link Europe/Rome Europe/San_Marino
+
+# Latvia
+
+# From Liene Kanepe (1998-09-17):
+
+# I asked about this matter Scientific Secretary of the Institute of Astronomy
+# of The University of Latvia Dr. paed Mr. Ilgonis Vilks. I also searched the
+# correct data in juridical acts and I found some juridical documents about
+# changes in the counting of time in Latvia from 1981....
+#
+# Act No.35 of the Council of Ministers of Latvian SSR of 1981-01-22 ...
+# according to the Act No.925 of the Council of Ministers of USSR of 1980-10-24
+# ...: all year round the time of 2nd time zone + 1 hour, in addition turning
+# the hands of the clock 1 hour forward on 1 April at 00:00 (GMT 31 March 21:00)
+# and 1 hour backward on the 1 October at 00:00 (GMT 30 September 20:00).
+#
+# Act No.592 of the Council of Ministers of Latvian SSR of 1984-09-24 ...
+# according to the Act No.967 of the Council of Ministers of USSR of 1984-09-13
+# ...: all year round the time of 2nd time zone + 1 hour, in addition turning
+# the hands of the clock 1 hour forward on the last Sunday of March at 02:00
+# (GMT 23:00 on the previous day) and 1 hour backward on the last Sunday of
+# September at 03:00 (GMT 23:00 on the previous day).
+#
+# Act No.81 of the Council of Ministers of Latvian SSR of 1989-03-22 ...
+# according to the Act No.227 of the Council of Ministers of USSR of 1989-03-14
+# ...: since the last Sunday of March 1989 in Lithuanian SSR, Latvian SSR,
+# Estonian SSR and Kaliningrad region of Russian Federation all year round the
+# time of 2nd time zone (Moscow time minus one hour). On the territory of Latvia
+# transition to summer time is performed on the last Sunday of March at 02:00
+# (GMT 00:00), turning the hands of the clock 1 hour forward. The end of
+# daylight saving time is performed on the last Sunday of September at 03:00
+# (GMT 00:00), turning the hands of the clock 1 hour backward. Exception is
+# 1989-03-26, when we must not turn the hands of the clock....
+#
+# The Regulations of the Cabinet of Ministers of the Republic of Latvia of
+# 1997-01-21 on transition to Summer time ... established the same order of
+# daylight savings time settings as in the States of the European Union.
+
+# From Andrei Ivanov (2000-03-06):
+# This year Latvia will not switch to Daylight Savings Time (as specified in
+# <a href="http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm">
+# The Regulations of the Cabinet of Ministers of the Rep. of Latvia of
+# 29-Feb-2000 (#79)</a>, in Latvian for subscribers only).
+
+# <a href="http://www.rferl.org/newsline/2001/01/3-CEE/cee-030101.html">
+# From RFE/RL Newsline (2001-01-03), noted after a heads-up by Rives McDow:
+# </a>
+# The Latvian government on 2 January decided that the country will
+# institute daylight-saving time this spring, LETA reported.
+# Last February the three Baltic states decided not to turn back their
+# clocks one hour in the spring....
+# Minister of Economy Aigars Kalvitis noted that Latvia had too few
+# daylight hours and thus decided to comply with a draft European
+# Commission directive that provides for instituting daylight-saving
+# time in EU countries between 2002 and 2006. The Latvian government
+# urged Lithuania and Estonia to adopt a similar time policy, but it
+# appears that they will not do so....
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Latvia 1989 1996 - Mar lastSun 2:00s 1:00 S
+Rule Latvia 1989 1996 - Sep lastSun 2:00s 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Riga 1:36:24 - LMT 1880
+ 1:36:24 - RMT 1918 Apr 15 2:00 #Riga Mean Time
+ 1:36:24 1:00 LST 1918 Sep 16 3:00 #Latvian Summer
+ 1:36:24 - RMT 1919 Apr 1 2:00
+ 1:36:24 1:00 LST 1919 May 22 3:00
+ 1:36:24 - RMT 1926 May 11
+ 2:00 - EET 1940 Aug 5
+ 3:00 - MSK 1941 Jul
+ 1:00 C-Eur CE%sT 1944 Oct 13
+ 3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s
+ 2:00 1:00 EEST 1989 Sep lastSun 2:00s
+ 2:00 Latvia EE%sT 1997 Jan 21
+ 2:00 EU EE%sT 2000 Feb 29
+ 2:00 - EET 2001 Jan 2
+ 2:00 EU EE%sT
+
+# Liechtenstein
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Vaduz 0:38:04 - LMT 1894 Jun
+ 1:00 - CET 1981
+ 1:00 EU CE%sT
+
+# Lithuania
+
+# From Paul Eggert (1996-11-22):
+# IATA SSIM (1992/1996) says Lithuania uses W-Eur rules, but since it is
+# known to be wrong about Estonia and Latvia, assume it's wrong here too.
+
+# From Marius Gedminas (1998-08-07):
+# I would like to inform that in this year Lithuanian time zone
+# (Europe/Vilnius) was changed.
+
+# From <a href="http://www.elta.lt/">ELTA</a> No. 972 (2582) (1999-09-29),
+# via Steffen Thorsen:
+# Lithuania has shifted back to the second time zone (GMT plus two hours)
+# to be valid here starting from October 31,
+# as decided by the national government on Wednesday....
+# The Lithuanian government also announced plans to consider a
+# motion to give up shifting to summer time in spring, as it was
+# already done by Estonia.
+
+# From the <a href="http://www.tourism.lt/informa/ff.htm">
+# Fact File, Lithuanian State Department of Tourism
+# </a> (2000-03-27): Local time is GMT+2 hours ..., no daylight saving.
+
+# From a user via Klaus Marten (2003-02-07):
+# As a candidate for membership of the European Union, Lithuania will
+# observe Summer Time in 2003, changing its clocks at the times laid
+# down in EU Directive 2000/84 of 19.I.01 (i.e. at the same times as its
+# neighbour Latvia). The text of the Lithuanian government Order of
+# 7.XI.02 to this effect can be found at
+# http://www.lrvk.lt/nut/11/n1749.htm
+
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Vilnius 1:41:16 - LMT 1880
+ 1:24:00 - WMT 1917 # Warsaw Mean Time
+ 1:35:36 - KMT 1919 Oct 10 # Kaunas Mean Time
+ 1:00 - CET 1920 Jul 12
+ 2:00 - EET 1920 Oct 9
+ 1:00 - CET 1940 Aug 3
+ 3:00 - MSK 1941 Jun 24
+ 1:00 C-Eur CE%sT 1944 Aug
+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+ 2:00 1:00 EEST 1991 Sep 29 2:00s
+ 2:00 C-Eur EE%sT 1998
+ 2:00 - EET 1998 Mar 29 1:00u
+ 1:00 EU CE%sT 1999 Oct 31 1:00u
+ 2:00 - EET 2003 Jan 1
+ 2:00 EU EE%sT
+
+# Luxembourg
+# Whitman disagrees with most of these dates in minor ways;
+# go with Shanks & Pottenger.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Lux 1916 only - May 14 23:00 1:00 S
+Rule Lux 1916 only - Oct 1 1:00 0 -
+Rule Lux 1917 only - Apr 28 23:00 1:00 S
+Rule Lux 1917 only - Sep 17 1:00 0 -
+Rule Lux 1918 only - Apr Mon>=15 2:00s 1:00 S
+Rule Lux 1918 only - Sep Mon>=15 2:00s 0 -
+Rule Lux 1919 only - Mar 1 23:00 1:00 S
+Rule Lux 1919 only - Oct 5 3:00 0 -
+Rule Lux 1920 only - Feb 14 23:00 1:00 S
+Rule Lux 1920 only - Oct 24 2:00 0 -
+Rule Lux 1921 only - Mar 14 23:00 1:00 S
+Rule Lux 1921 only - Oct 26 2:00 0 -
+Rule Lux 1922 only - Mar 25 23:00 1:00 S
+Rule Lux 1922 only - Oct Sun>=2 1:00 0 -
+Rule Lux 1923 only - Apr 21 23:00 1:00 S
+Rule Lux 1923 only - Oct Sun>=2 2:00 0 -
+Rule Lux 1924 only - Mar 29 23:00 1:00 S
+Rule Lux 1924 1928 - Oct Sun>=2 1:00 0 -
+Rule Lux 1925 only - Apr 5 23:00 1:00 S
+Rule Lux 1926 only - Apr 17 23:00 1:00 S
+Rule Lux 1927 only - Apr 9 23:00 1:00 S
+Rule Lux 1928 only - Apr 14 23:00 1:00 S
+Rule Lux 1929 only - Apr 20 23:00 1:00 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Luxembourg 0:24:36 - LMT 1904 Jun
+ 1:00 Lux CE%sT 1918 Nov 25
+ 0:00 Lux WE%sT 1929 Oct 6 2:00s
+ 0:00 Belgium WE%sT 1940 May 14 3:00
+ 1:00 C-Eur WE%sT 1944 Sep 18 3:00
+ 1:00 Belgium CE%sT 1977
+ 1:00 EU CE%sT
+
+# Macedonia
+# see Serbia
+
+# Malta
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Malta 1973 only - Mar 31 0:00s 1:00 S
+Rule Malta 1973 only - Sep 29 0:00s 0 -
+Rule Malta 1974 only - Apr 21 0:00s 1:00 S
+Rule Malta 1974 only - Sep 16 0:00s 0 -
+Rule Malta 1975 1979 - Apr Sun>=15 2:00 1:00 S
+Rule Malta 1975 1980 - Sep Sun>=15 2:00 0 -
+Rule Malta 1980 only - Mar 31 2:00 1:00 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta
+ 1:00 Italy CE%sT 1942 Nov 2 2:00s
+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
+ 1:00 Italy CE%sT 1973 Mar 31
+ 1:00 Malta CE%sT 1981
+ 1:00 EU CE%sT
+
+# Moldova
+
+# From Paul Eggert (2006-03-22):
+# A previous version of this database followed Shanks & Pottenger, who write
+# that Tiraspol switched to Moscow time on 1992-01-19 at 02:00.
+# However, this is most likely an error, as Moldova declared independence
+# on 1991-08-27 (the 1992-01-19 date is that of a Russian decree).
+# In early 1992 there was large-scale interethnic violence in the area
+# and it's possible that some Russophones continued to observe Moscow time.
+# But [two people] separately reported via
+# Jesper Norgaard that as of 2001-01-24 Tiraspol was like Chisinau.
+# The Tiraspol entry has therefore been removed for now.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Chisinau 1:55:20 - LMT 1880
+ 1:55 - CMT 1918 Feb 15 # Chisinau MT
+ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
+ 2:00 Romania EE%sT 1940 Aug 15
+ 2:00 1:00 EEST 1941 Jul 17
+ 1:00 C-Eur CE%sT 1944 Aug 24
+ 3:00 Russia MSK/MSD 1990
+ 3:00 - MSK 1990 May 6
+ 2:00 - EET 1991
+ 2:00 Russia EE%sT 1992
+ 2:00 E-Eur EE%sT 1997
+# See Romania commentary for the guessed 1997 transition to EU rules.
+ 2:00 EU EE%sT
+
+# Monaco
+# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
+# more precise 0:09:21.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
+ 0:00 France WE%sT 1945 Sep 16 3:00
+ 1:00 France CE%sT 1977
+ 1:00 EU CE%sT
+
+# Montenegro
+# see Serbia
+
+# Netherlands
+
+# Howse writes that the Netherlands' railways used GMT between 1892 and 1940,
+# but for other purposes the Netherlands used Amsterdam mean time.
+
+# However, Robert H. van Gent writes (2001-04-01):
+# Howse's statement is only correct up to 1909. From 1909-05-01 (00:00:00
+# Amsterdam mean time) onwards, the whole of the Netherlands (including
+# the Dutch railways) was required by law to observe Amsterdam mean time
+# (19 minutes 32.13 seconds ahead of GMT). This had already been the
+# common practice (except for the railways) for many decades but it was
+# not until 1909 when the Dutch government finally defined this by law.
+# On 1937-07-01 this was changed to 20 minutes (exactly) ahead of GMT and
+# was generally known as Dutch Time ("Nederlandse Tijd").
+#
+# (2001-04-08):
+# 1892-05-01 was the date when the Dutch railways were by law required to
+# observe GMT while the remainder of the Netherlands adhered to the common
+# practice of following Amsterdam mean time.
+#
+# (2001-04-09):
+# In 1835 the authorities of the province of North Holland requested the
+# municipal authorities of the towns and cities in the province to observe
+# Amsterdam mean time but I do not know in how many cases this request was
+# actually followed.
+#
+# From 1852 onwards the Dutch telegraph offices were by law required to
+# observe Amsterdam mean time. As the time signals from the observatory of
+# Leiden were also distributed by the telegraph system, I assume that most
+# places linked up with the telegraph (and railway) system automatically
+# adopted Amsterdam mean time.
+#
+# Although the early Dutch railway companies initially observed a variety
+# of times, most of them had adopted Amsterdam mean time by 1858 but it
+# was not until 1866 when they were all required by law to observe
+# Amsterdam mean time.
+
+# The data before 1945 are taken from
+# <http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm>.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Neth 1916 only - May 1 0:00 1:00 NST # Netherlands Summer Time
+Rule Neth 1916 only - Oct 1 0:00 0 AMT # Amsterdam Mean Time
+Rule Neth 1917 only - Apr 16 2:00s 1:00 NST
+Rule Neth 1917 only - Sep 17 2:00s 0 AMT
+Rule Neth 1918 1921 - Apr Mon>=1 2:00s 1:00 NST
+Rule Neth 1918 1921 - Sep lastMon 2:00s 0 AMT
+Rule Neth 1922 only - Mar lastSun 2:00s 1:00 NST
+Rule Neth 1922 1936 - Oct Sun>=2 2:00s 0 AMT
+Rule Neth 1923 only - Jun Fri>=1 2:00s 1:00 NST
+Rule Neth 1924 only - Mar lastSun 2:00s 1:00 NST
+Rule Neth 1925 only - Jun Fri>=1 2:00s 1:00 NST
+# From 1926 through 1939 DST began 05-15, except that it was delayed by a week
+# in years when 05-15 fell in the Pentecost weekend.
+Rule Neth 1926 1931 - May 15 2:00s 1:00 NST
+Rule Neth 1932 only - May 22 2:00s 1:00 NST
+Rule Neth 1933 1936 - May 15 2:00s 1:00 NST
+Rule Neth 1937 only - May 22 2:00s 1:00 NST
+Rule Neth 1937 only - Jul 1 0:00 1:00 S
+Rule Neth 1937 1939 - Oct Sun>=2 2:00s 0 -
+Rule Neth 1938 1939 - May 15 2:00s 1:00 S
+Rule Neth 1945 only - Apr 2 2:00s 1:00 S
+Rule Neth 1945 only - Sep 16 2:00s 0 -
+#
+# Amsterdam Mean Time was +00:19:32.13 exactly, but the .13 is omitted
+# below because the current format requires GMTOFF to be an integer.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Amsterdam 0:19:32 - LMT 1835
+ 0:19:32 Neth %s 1937 Jul 1
+ 0:20 Neth NE%sT 1940 May 16 0:00 # Dutch Time
+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00
+ 1:00 Neth CE%sT 1977
+ 1:00 EU CE%sT
+
+# Norway
+# http://met.no/met/met_lex/q_u/sommertid.html (2004-01) agrees with Shanks &
+# Pottenger.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Norway 1916 only - May 22 1:00 1:00 S
+Rule Norway 1916 only - Sep 30 0:00 0 -
+Rule Norway 1945 only - Apr 2 2:00s 1:00 S
+Rule Norway 1945 only - Oct 1 2:00s 0 -
+Rule Norway 1959 1964 - Mar Sun>=15 2:00s 1:00 S
+Rule Norway 1959 1965 - Sep Sun>=15 2:00s 0 -
+Rule Norway 1965 only - Apr 25 2:00s 1:00 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Oslo 0:43:00 - LMT 1895 Jan 1
+ 1:00 Norway CE%sT 1940 Aug 10 23:00
+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00
+ 1:00 Norway CE%sT 1980
+ 1:00 EU CE%sT
+
+# Svalbard & Jan Mayen
+
+# From Steffen Thorsen (2001-05-01):
+# Although I could not find it explicitly, it seems that Jan Mayen and
+# Svalbard have been using the same time as Norway at least since the
+# time they were declared as parts of Norway. Svalbard was declared
+# as a part of Norway by law of 1925-07-17 no 11, section 4 and Jan
+# Mayen by law of 1930-02-27 no 2, section 2. (From
+# http://www.lovdata.no/all/nl-19250717-011.html and
+# http://www.lovdata.no/all/nl-19300227-002.html). The law/regulation
+# for normal/standard time in Norway is from 1894-06-29 no 1 (came
+# into operation on 1895-01-01) and Svalbard/Jan Mayen seem to be a
+# part of this law since 1925/1930. (From
+# http://www.lovdata.no/all/nl-18940629-001.html ) I have not been
+# able to find if Jan Mayen used a different time zone (e.g. -0100)
+# before 1930. Jan Mayen has only been "inhabitated" since 1921 by
+# Norwegian meteorologists and maybe used the same time as Norway ever
+# since 1921. Svalbard (Arctic/Longyearbyen) has been inhabited since
+# before 1895, and therefore probably changed the local time somewhere
+# between 1895 and 1925 (inclusive).
+
+# From Paul Eggert (2001-05-01):
+#
+# Actually, Jan Mayen was never occupied by Germany during World War II,
+# so it must have diverged from Oslo time during the war, as Oslo was
+# keeping Berlin time.
+#
+# <http://home.no.net/janmayen/history.htm> says that the meteorologists
+# burned down their station in 1940 and left the island, but returned in
+# 1941 with a small Norwegian garrison and continued operations despite
+# frequent air ttacks from Germans. In 1943 the Americans established a
+# radiolocating station on the island, called "Atlantic City". Possibly
+# the UTC offset changed during the war, but I think it unlikely that
+# Jan Mayen used German daylight-saving rules.
+#
+# Svalbard is more complicated, as it was raided in August 1941 by an
+# Allied party that evacuated the civilian population to England (says
+# <http://www.bartleby.com/65/sv/Svalbard.html>). The Svalbard FAQ
+# <http://www.svalbard.com/SvalbardFAQ.html> says that the Germans were
+# expelled on 1942-05-14. However, small parties of Germans did return,
+# and according to Wilhelm Dege's book "War North of 80" (1954)
+# <http://www.ucalgary.ca/UofC/departments/UP/1-55238/1-55238-110-2.html>
+# the German armed forces at the Svalbard weather station code-named
+# Haudegen did not surrender to the Allies until September 1945.
+#
+# All these events predate our cutoff date of 1970. Unless we can
+# come up with more definitive info about the timekeeping during the
+# war years it's probably best just do do the following for now:
+Link Europe/Oslo Arctic/Longyearbyen
+
+# Poland
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Poland 1918 1919 - Sep 16 2:00s 0 -
+Rule Poland 1919 only - Apr 15 2:00s 1:00 S
+Rule Poland 1944 only - Apr 3 2:00s 1:00 S
+# Whitman gives 1944 Nov 30; go with Shanks & Pottenger.
+Rule Poland 1944 only - Oct 4 2:00 0 -
+# For 1944-1948 Whitman gives the previous day; go with Shanks & Pottenger.
+Rule Poland 1945 only - Apr 29 0:00 1:00 S
+Rule Poland 1945 only - Nov 1 0:00 0 -
+# For 1946 on the source is Kazimierz Borkowski,
+# Torun Center for Astronomy, Dept. of Radio Astronomy, Nicolaus Copernicus U.,
+# <http://www.astro.uni.torun.pl/~kb/Artykuly/U-PA/Czas2.htm#tth_tAb1>
+# Thanks to Przemyslaw Augustyniak (2005-05-28) for this reference.
+# He also gives these further references:
+# Mon Pol nr 13, poz 162 (1995) <http://www.abc.com.pl/serwis/mp/1995/0162.htm>
+# Druk nr 2180 (2003) <http://www.senat.gov.pl/k5/dok/sejm/053/2180.pdf>
+Rule Poland 1946 only - Apr 14 0:00s 1:00 S
+Rule Poland 1946 only - Oct 7 2:00s 0 -
+Rule Poland 1947 only - May 4 2:00s 1:00 S
+Rule Poland 1947 1949 - Oct Sun>=1 2:00s 0 -
+Rule Poland 1948 only - Apr 18 2:00s 1:00 S
+Rule Poland 1949 only - Apr 10 2:00s 1:00 S
+Rule Poland 1957 only - Jun 2 1:00s 1:00 S
+Rule Poland 1957 1958 - Sep lastSun 1:00s 0 -
+Rule Poland 1958 only - Mar 30 1:00s 1:00 S
+Rule Poland 1959 only - May 31 1:00s 1:00 S
+Rule Poland 1959 1961 - Oct Sun>=1 1:00s 0 -
+Rule Poland 1960 only - Apr 3 1:00s 1:00 S
+Rule Poland 1961 1964 - May lastSun 1:00s 1:00 S
+Rule Poland 1962 1964 - Sep lastSun 1:00s 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Warsaw 1:24:00 - LMT 1880
+ 1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time
+ 1:00 C-Eur CE%sT 1918 Sep 16 3:00
+ 2:00 Poland EE%sT 1922 Jun
+ 1:00 Poland CE%sT 1940 Jun 23 2:00
+ 1:00 C-Eur CE%sT 1944 Oct
+ 1:00 Poland CE%sT 1977
+ 1:00 W-Eur CE%sT 1988
+ 1:00 EU CE%sT
+
+# Portugal
+#
+# From Rui Pedro Salgueiro (1992-11-12):
+# Portugal has recently (September, 27) changed timezone
+# (from WET to MET or CET) to harmonize with EEC.
+#
+# Martin Bruckmann (1996-02-29) reports via Peter Ilieve
+# that Portugal is reverting to 0:00 by not moving its clocks this spring.
+# The new Prime Minister was fed up with getting up in the dark in the winter.
+#
+# From Paul Eggert (1996-11-12):
+# IATA SSIM (1991-09) reports several 1991-09 and 1992-09 transitions
+# at 02:00u, not 01:00u. Assume that these are typos.
+# IATA SSIM (1991/1992) reports that the Azores were at -1:00.
+# IATA SSIM (1993-02) says +0:00; later issues (through 1996-09) say -1:00.
+# Guess that the Azores changed to EU rules in 1992 (since that's when Portugal
+# harmonized with the EU), and that they stayed +0:00 that winter.
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+# DSH writes that despite Decree 1,469 (1915), the change to the clocks was not
+# done every year, depending on what Spain did, because of railroad schedules.
+# Go with Shanks & Pottenger.
+Rule Port 1916 only - Jun 17 23:00 1:00 S
+# Whitman gives 1916 Oct 31; go with Shanks & Pottenger.
+Rule Port 1916 only - Nov 1 1:00 0 -
+Rule Port 1917 only - Feb 28 23:00s 1:00 S
+Rule Port 1917 1921 - Oct 14 23:00s 0 -
+Rule Port 1918 only - Mar 1 23:00s 1:00 S
+Rule Port 1919 only - Feb 28 23:00s 1:00 S
+Rule Port 1920 only - Feb 29 23:00s 1:00 S
+Rule Port 1921 only - Feb 28 23:00s 1:00 S
+Rule Port 1924 only - Apr 16 23:00s 1:00 S
+Rule Port 1924 only - Oct 14 23:00s 0 -
+Rule Port 1926 only - Apr 17 23:00s 1:00 S
+Rule Port 1926 1929 - Oct Sat>=1 23:00s 0 -
+Rule Port 1927 only - Apr 9 23:00s 1:00 S
+Rule Port 1928 only - Apr 14 23:00s 1:00 S
+Rule Port 1929 only - Apr 20 23:00s 1:00 S
+Rule Port 1931 only - Apr 18 23:00s 1:00 S
+# Whitman gives 1931 Oct 8; go with Shanks & Pottenger.
+Rule Port 1931 1932 - Oct Sat>=1 23:00s 0 -
+Rule Port 1932 only - Apr 2 23:00s 1:00 S
+Rule Port 1934 only - Apr 7 23:00s 1:00 S
+# Whitman gives 1934 Oct 5; go with Shanks & Pottenger.
+Rule Port 1934 1938 - Oct Sat>=1 23:00s 0 -
+# Shanks & Pottenger give 1935 Apr 30; go with Whitman.
+Rule Port 1935 only - Mar 30 23:00s 1:00 S
+Rule Port 1936 only - Apr 18 23:00s 1:00 S
+# Whitman gives 1937 Apr 2; go with Shanks & Pottenger.
+Rule Port 1937 only - Apr 3 23:00s 1:00 S
+Rule Port 1938 only - Mar 26 23:00s 1:00 S
+Rule Port 1939 only - Apr 15 23:00s 1:00 S
+# Whitman gives 1939 Oct 7; go with Shanks & Pottenger.
+Rule Port 1939 only - Nov 18 23:00s 0 -
+Rule Port 1940 only - Feb 24 23:00s 1:00 S
+# Shanks & Pottenger give 1940 Oct 7; go with Whitman.
+Rule Port 1940 1941 - Oct 5 23:00s 0 -
+Rule Port 1941 only - Apr 5 23:00s 1:00 S
+Rule Port 1942 1945 - Mar Sat>=8 23:00s 1:00 S
+Rule Port 1942 only - Apr 25 22:00s 2:00 M # Midsummer
+Rule Port 1942 only - Aug 15 22:00s 1:00 S
+Rule Port 1942 1945 - Oct Sat>=24 23:00s 0 -
+Rule Port 1943 only - Apr 17 22:00s 2:00 M
+Rule Port 1943 1945 - Aug Sat>=25 22:00s 1:00 S
+Rule Port 1944 1945 - Apr Sat>=21 22:00s 2:00 M
+Rule Port 1946 only - Apr Sat>=1 23:00s 1:00 S
+Rule Port 1946 only - Oct Sat>=1 23:00s 0 -
+Rule Port 1947 1949 - Apr Sun>=1 2:00s 1:00 S
+Rule Port 1947 1949 - Oct Sun>=1 2:00s 0 -
+# Shanks & Pottenger say DST was observed in 1950; go with Whitman.
+# Whitman gives Oct lastSun for 1952 on; go with Shanks & Pottenger.
+Rule Port 1951 1965 - Apr Sun>=1 2:00s 1:00 S
+Rule Port 1951 1965 - Oct Sun>=1 2:00s 0 -
+Rule Port 1977 only - Mar 27 0:00s 1:00 S
+Rule Port 1977 only - Sep 25 0:00s 0 -
+Rule Port 1978 1979 - Apr Sun>=1 0:00s 1:00 S
+Rule Port 1978 only - Oct 1 0:00s 0 -
+Rule Port 1979 1982 - Sep lastSun 1:00s 0 -
+Rule Port 1980 only - Mar lastSun 0:00s 1:00 S
+Rule Port 1981 1982 - Mar lastSun 1:00s 1:00 S
+Rule Port 1983 only - Mar lastSun 2:00s 1:00 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+# Shanks & Pottenger say the transition from LMT to WET occurred 1911-05-24;
+# Willett says 1912-01-01. Go with Willett.
+Zone Europe/Lisbon -0:36:32 - LMT 1884
+ -0:36:32 - LMT 1912 Jan 1 # Lisbon Mean Time
+ 0:00 Port WE%sT 1966 Apr 3 2:00
+ 1:00 - CET 1976 Sep 26 1:00
+ 0:00 Port WE%sT 1983 Sep 25 1:00s
+ 0:00 W-Eur WE%sT 1992 Sep 27 1:00s
+ 1:00 EU CE%sT 1996 Mar 31 1:00u
+ 0:00 EU WE%sT
+Zone Atlantic/Azores -1:42:40 - LMT 1884 # Ponta Delgada
+ -1:54:32 - HMT 1911 May 24 # Horta Mean Time
+ -2:00 Port AZO%sT 1966 Apr 3 2:00 # Azores Time
+ -1:00 Port AZO%sT 1983 Sep 25 1:00s
+ -1:00 W-Eur AZO%sT 1992 Sep 27 1:00s
+ 0:00 EU WE%sT 1993 Mar 28 1:00u
+ -1:00 EU AZO%sT
+Zone Atlantic/Madeira -1:07:36 - LMT 1884 # Funchal
+ -1:07:36 - FMT 1911 May 24 # Funchal Mean Time
+ -1:00 Port MAD%sT 1966 Apr 3 2:00 # Madeira Time
+ 0:00 Port WE%sT 1983 Sep 25 1:00s
+ 0:00 EU WE%sT
+
+# Romania
+#
+# From Paul Eggert (1999-10-07):
+# <a href="http://www.nineoclock.ro/POL/1778pol.html">
+# Nine O'clock</a> (1998-10-23) reports that the switch occurred at
+# 04:00 local time in fall 1998. For lack of better info,
+# assume that Romania and Moldova switched to EU rules in 1997,
+# the same year as Bulgaria.
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Romania 1932 only - May 21 0:00s 1:00 S
+Rule Romania 1932 1939 - Oct Sun>=1 0:00s 0 -
+Rule Romania 1933 1939 - Apr Sun>=2 0:00s 1:00 S
+Rule Romania 1979 only - May 27 0:00 1:00 S
+Rule Romania 1979 only - Sep lastSun 0:00 0 -
+Rule Romania 1980 only - Apr 5 23:00 1:00 S
+Rule Romania 1980 only - Sep lastSun 1:00 0 -
+Rule Romania 1991 1993 - Mar lastSun 0:00s 1:00 S
+Rule Romania 1991 1993 - Sep lastSun 0:00s 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Bucharest 1:44:24 - LMT 1891 Oct
+ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
+ 2:00 Romania EE%sT 1981 Mar 29 2:00s
+ 2:00 C-Eur EE%sT 1991
+ 2:00 Romania EE%sT 1994
+ 2:00 E-Eur EE%sT 1997
+ 2:00 EU EE%sT
+
+# Russia
+
+# From Paul Eggert (2006-03-22):
+# Except for Moscow after 1919-07-01, I invented the time zone abbreviations.
+# Moscow time zone abbreviations after 1919-07-01, and Moscow rules after 1991,
+# are from Andrey A. Chernov. The rest is from Shanks & Pottenger,
+# except we follow Chernov's report that 1992 DST transitions were Sat
+# 23:00, not Sun 02:00s.
+#
+# From Stanislaw A. Kuzikowski (1994-06-29):
+# But now it is some months since Novosibirsk is 3 hours ahead of Moscow!
+# I do not know why they have decided to make this change;
+# as far as I remember it was done exactly during winter->summer switching
+# so we (Novosibirsk) simply did not switch.
+#
+# From Andrey A. Chernov (1996-10-04):
+# `MSK' and `MSD' were born and used initially on Moscow computers with
+# UNIX-like OSes by several developer groups (e.g. Demos group, Kiae group)....
+# The next step was the UUCP network, the Relcom predecessor
+# (used mainly for mail), and MSK/MSD was actively used there.
+#
+# From Chris Carrier (1996-10-30):
+# According to a friend of mine who rode the Trans-Siberian Railroad from
+# Moscow to Irkutsk in 1995, public air and rail transport in Russia ...
+# still follows Moscow time, no matter where in Russia it is located.
+#
+# For Grozny, Chechnya, we have the following story from
+# John Daniszewski, "Scavengers in the Rubble", Los Angeles Times (2001-02-07):
+# News--often false--is spread by word of mouth. A rumor that it was
+# time to move the clocks back put this whole city out of sync with
+# the rest of Russia for two weeks--even soldiers stationed here began
+# enforcing curfew at the wrong time.
+#
+# From Gwillim Law (2001-06-05):
+# There's considerable evidence that Sakhalin Island used to be in
+# UTC+11, and has changed to UTC+10, in this decade. I start with the
+# SSIM, which listed Yuzhno-Sakhalinsk in zone RU10 along with Magadan
+# until February 1997, and then in RU9 with Khabarovsk and Vladivostok
+# since September 1997.... Although the Kuril Islands are
+# administratively part of Sakhalin oblast', they appear to have
+# remained on UTC+11 along with Magadan.
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+#
+# Kaliningradskaya oblast'.
+Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr
+ 1:00 C-Eur CE%sT 1945
+ 2:00 Poland CE%sT 1946
+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+ 2:00 Russia EE%sT
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Respublika Adygeya, Arkhangel'skaya oblast',
+# Belgorodskaya oblast', Bryanskaya oblast', Vladimirskaya oblast',
+# Vologodskaya oblast', Voronezhskaya oblast',
+# Respublika Dagestan, Ivanovskaya oblast', Respublika Ingushetiya,
+# Kabarbino-Balkarskaya Respublika, Respublika Kalmykiya,
+# Kalyzhskaya oblast', Respublika Karachaevo-Cherkessiya,
+# Respublika Kareliya, Respublika Komi,
+# Kostromskaya oblast', Krasnodarskij kraj, Kurskaya oblast',
+# Leningradskaya oblast', Lipetskaya oblast', Respublika Marij El,
+# Respublika Mordoviya, Moskva, Moskovskaya oblast',
+# Murmanskaya oblast', Nenetskij avtonomnyj okrug,
+# Nizhegorodskaya oblast', Novgorodskaya oblast', Orlovskaya oblast',
+# Penzenskaya oblast', Pskovskaya oblast', Rostovskaya oblast',
+# Ryazanskaya oblast', Sankt-Peterburg,
+# Respublika Severnaya Osetiya, Smolenskaya oblast',
+# Stavropol'skij kraj, Tambovskaya oblast', Respublika Tatarstan,
+# Tverskaya oblast', Tyl'skaya oblast', Ul'yanovskaya oblast',
+# Chechenskaya Respublika, Chuvashskaya oblast',
+# Yaroslavskaya oblast'
+Zone Europe/Moscow 2:30:20 - LMT 1880
+ 2:30 - MMT 1916 Jul 3 # Moscow Mean Time
+ 2:30:48 Russia %s 1919 Jul 1 2:00
+ 3:00 Russia MSK/MSD 1922 Oct
+ 2:00 - EET 1930 Jun 21
+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+ 2:00 Russia EE%sT 1992 Jan 19 2:00s
+ 3:00 Russia MSK/MSD
+#
+# Astrakhanskaya oblast', Kirovskaya oblast', Saratovskaya oblast',
+# Volgogradskaya oblast'. Shanks & Pottenger say Kirov is still at +0400
+# but Wikipedia (2006-05-09) says +0300. Perhaps it switched after the
+# others? But we have no data.
+Zone Europe/Volgograd 2:57:40 - LMT 1920 Jan 3
+ 3:00 - TSAT 1925 Apr 6 # Tsaritsyn Time
+ 3:00 - STAT 1930 Jun 21 # Stalingrad Time
+ 4:00 - STAT 1961 Nov 11
+ 4:00 Russia VOL%sT 1989 Mar 26 2:00s # Volgograd T
+ 3:00 Russia VOL%sT 1991 Mar 31 2:00s
+ 4:00 - VOLT 1992 Mar 29 2:00s
+ 3:00 Russia VOL%sT
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Samarskaya oblast', Udmyrtskaya respublika
+Zone Europe/Samara 3:20:36 - LMT 1919 Jul 1 2:00
+ 3:00 - SAMT 1930 Jun 21
+ 4:00 - SAMT 1935 Jan 27
+ 4:00 Russia KUY%sT 1989 Mar 26 2:00s # Kuybyshev
+ 3:00 Russia KUY%sT 1991 Mar 31 2:00s
+ 2:00 Russia KUY%sT 1991 Sep 29 2:00s
+ 3:00 - KUYT 1991 Oct 20 3:00
+ 4:00 Russia SAM%sT # Samara Time
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Respublika Bashkortostan, Komi-Permyatskij avtonomnyj okrug,
+# Kurganskaya oblast', Orenburgskaya oblast', Permskaya oblast',
+# Sverdlovskaya oblast', Tyumenskaya oblast',
+# Khanty-Manskijskij avtonomnyj okrug, Chelyabinskaya oblast',
+# Yamalo-Nenetskij avtonomnyj okrug.
+Zone Asia/Yekaterinburg 4:02:24 - LMT 1919 Jul 15 4:00
+ 4:00 - SVET 1930 Jun 21 # Sverdlovsk Time
+ 5:00 Russia SVE%sT 1991 Mar 31 2:00s
+ 4:00 Russia SVE%sT 1992 Jan 19 2:00s
+ 5:00 Russia YEK%sT # Yekaterinburg Time
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Respublika Altaj, Altajskij kraj, Omskaya oblast'.
+Zone Asia/Omsk 4:53:36 - LMT 1919 Nov 14
+ 5:00 - OMST 1930 Jun 21 # Omsk TIme
+ 6:00 Russia OMS%sT 1991 Mar 31 2:00s
+ 5:00 Russia OMS%sT 1992 Jan 19 2:00s
+ 6:00 Russia OMS%sT
+#
+# From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's
+# not clear when it switched from +7 to +6.
+# Novosibirskaya oblast', Tomskaya oblast'.
+Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00
+ 6:00 - NOVT 1930 Jun 21 # Novosibirsk Time
+ 7:00 Russia NOV%sT 1991 Mar 31 2:00s
+ 6:00 Russia NOV%sT 1992 Jan 19 2:00s
+ 7:00 Russia NOV%sT 1993 May 23 # say Shanks & P.
+ 6:00 Russia NOV%sT
+
+# From Alexander Krivenyshev (2009-10-13):
+# Kemerovo oblast' (Kemerovo region) in Russia will change current time zone on
+# March 28, 2010:
+# from current Russia Zone 6 - Krasnoyarsk Time Zone (KRA) UTC +0700
+# to Russia Zone 5 - Novosibirsk Time Zone (NOV) UTC +0600
+#
+# This is according to Government of Russia decree # 740, on September
+# 14, 2009 "Application in the territory of the Kemerovo region the Fifth
+# time zone." ("Russia Zone 5" or old "USSR Zone 5" is GMT +0600)
+#
+# Russian Government web site (Russian language)
+# <a href="http://www.government.ru/content/governmentactivity/rfgovernmentdecisions/archiv">
+# http://www.government.ru/content/governmentactivity/rfgovernmentdecisions/archive/2009/09/14/991633.htm
+# </a>
+# or Russian-English translation by WorldTimeZone.com with reference
+# map to local region and new Russia Time Zone map after March 28, 2010
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_russia03.html">
+# http://www.worldtimezone.com/dst_news/dst_news_russia03.html
+# </a>
+#
+# Thus, when Russia will switch to DST on the night of March 28, 2010
+# Kemerovo region (Kemerovo oblast') will not change the clock.
+#
+# As a result, Kemerovo oblast' will be in the same time zone as
+# Novosibirsk, Omsk, Tomsk, Barnaul and Altai Republic.
+
+Zone Asia/Novokuznetsk 5:48:48 - NMT 1920 Jan 6
+ 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
+ 7:00 Russia KRA%sT 1991 Mar 31 2:00s
+ 6:00 Russia KRA%sT 1992 Jan 19 2:00s
+ 7:00 Russia KRA%sT 2010 Mar 28 2:00s
+ 6:00 Russia NOV%sT # Novosibirsk/Novokuznetsk Time
+
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Krasnoyarskij kraj,
+# Tajmyrskij (Dolgano-Nenetskij) avtonomnyj okrug,
+# Respublika Tuva, Respublika Khakasiya, Evenkijskij avtonomnyj okrug.
+Zone Asia/Krasnoyarsk 6:11:20 - LMT 1920 Jan 6
+ 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
+ 7:00 Russia KRA%sT 1991 Mar 31 2:00s
+ 6:00 Russia KRA%sT 1992 Jan 19 2:00s
+ 7:00 Russia KRA%sT
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Respublika Buryatiya, Irkutskaya oblast',
+# Ust'-Ordynskij Buryatskij avtonomnyj okrug.
+Zone Asia/Irkutsk 6:57:20 - LMT 1880
+ 6:57:20 - IMT 1920 Jan 25 # Irkutsk Mean Time
+ 7:00 - IRKT 1930 Jun 21 # Irkutsk Time
+ 8:00 Russia IRK%sT 1991 Mar 31 2:00s
+ 7:00 Russia IRK%sT 1992 Jan 19 2:00s
+ 8:00 Russia IRK%sT
+#
+# From Oscar van Vlijmen (2003-10-18): [This region consists of]
+# Aginskij Buryatskij avtonomnyj okrug, Amurskaya oblast',
+# [parts of] Respublika Sakha (Yakutiya), Chitinskaya oblast'.
+# The Sakha districts are: Aldanskij, Amginskij, Anabarskij,
+# Bulunskij, Verkhnekolymskij, Verkhnevilyujskij, Vilyujskij, Gornyj,
+# Zhiganskij, Kobyajskij, Lenskij, Megino-Kangalasskij, Mirninskij,
+# Namskij, Nyurbinskij, Olenekskij, Olekminskij, Srednekolymskij,
+# Suntarskij, Tattinskij, Ust'-Aldanskij, Khangalasskij,
+# Churapchinskij, Eveno-Bytantajskij.
+Zone Asia/Yakutsk 8:38:40 - LMT 1919 Dec 15
+ 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+ 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+ 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+ 9:00 Russia YAK%sT
+#
+# From Oscar van Vlijmen (2003-10-18): [This region consists of]
+# Evrejskaya avtonomnaya oblast', Khabarovskij kraj, Primorskij kraj,
+# [parts of] Respublika Sakha (Yakutiya).
+# The Sakha districts are: Verkhoyanskij, Tomponskij, Ust'-Majskij,
+# Ust'-Yanskij.
+Zone Asia/Vladivostok 8:47:44 - LMT 1922 Nov 15
+ 9:00 - VLAT 1930 Jun 21 # Vladivostok Time
+ 10:00 Russia VLA%sT 1991 Mar 31 2:00s
+ 9:00 Russia VLA%sST 1992 Jan 19 2:00s
+ 10:00 Russia VLA%sT
+#
+# Sakhalinskaya oblast'.
+# The Zone name should be Yuzhno-Sakhalinsk, but that's too long.
+Zone Asia/Sakhalin 9:30:48 - LMT 1905 Aug 23
+ 9:00 - CJT 1938
+ 9:00 - JST 1945 Aug 25
+ 11:00 Russia SAK%sT 1991 Mar 31 2:00s # Sakhalin T.
+ 10:00 Russia SAK%sT 1992 Jan 19 2:00s
+ 11:00 Russia SAK%sT 1997 Mar lastSun 2:00s
+ 10:00 Russia SAK%sT
+#
+# From Oscar van Vlijmen (2003-10-18): [This region consists of]
+# Magadanskaya oblast', Respublika Sakha (Yakutiya).
+# Probably also: Kuril Islands.
+# The Sakha districts are: Abyjskij, Allaikhovskij, Momskij,
+# Nizhnekolymskij, Ojmyakonskij.
+Zone Asia/Magadan 10:03:12 - LMT 1924 May 2
+ 10:00 - MAGT 1930 Jun 21 # Magadan Time
+ 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+ 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+ 11:00 Russia MAG%sT
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Kamchatskaya oblast', Koryakskij avtonomnyj okrug.
+#
+# The Zone name should be Asia/Petropavlovsk-Kamchatski, but that's too long.
+Zone Asia/Kamchatka 10:34:36 - LMT 1922 Nov 10
+ 11:00 - PETT 1930 Jun 21 # P-K Time
+ 12:00 Russia PET%sT 1991 Mar 31 2:00s
+ 11:00 Russia PET%sT 1992 Jan 19 2:00s
+ 12:00 Russia PET%sT
+#
+# Chukotskij avtonomnyj okrug
+Zone Asia/Anadyr 11:49:56 - LMT 1924 May 2
+ 12:00 - ANAT 1930 Jun 21 # Anadyr Time
+ 13:00 Russia ANA%sT 1982 Apr 1 0:00s
+ 12:00 Russia ANA%sT 1991 Mar 31 2:00s
+ 11:00 Russia ANA%sT 1992 Jan 19 2:00s
+ 12:00 Russia ANA%sT
+
+# Serbia
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Belgrade 1:22:00 - LMT 1884
+ 1:00 - CET 1941 Apr 18 23:00
+ 1:00 C-Eur CE%sT 1945
+ 1:00 - CET 1945 May 8 2:00s
+ 1:00 1:00 CEST 1945 Sep 16 2:00s
+# Metod Kozelj reports that the legal date of
+# transition to EU rules was 1982-11-27, for all of Yugoslavia at the time.
+# Shanks & Pottenger don't give as much detail, so go with Kozelj.
+ 1:00 - CET 1982 Nov 27
+ 1:00 EU CE%sT
+Link Europe/Belgrade Europe/Ljubljana # Slovenia
+Link Europe/Belgrade Europe/Podgorica # Montenegro
+Link Europe/Belgrade Europe/Sarajevo # Bosnia and Herzegovina
+Link Europe/Belgrade Europe/Skopje # Macedonia
+Link Europe/Belgrade Europe/Zagreb # Croatia
+
+# Slovakia
+Link Europe/Prague Europe/Bratislava
+
+# Slovenia
+# see Serbia
+
+# Spain
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+# For 1917-1919 Whitman gives Apr Sat>=1 - Oct Sat>=1;
+# go with Shanks & Pottenger.
+Rule Spain 1917 only - May 5 23:00s 1:00 S
+Rule Spain 1917 1919 - Oct 6 23:00s 0 -
+Rule Spain 1918 only - Apr 15 23:00s 1:00 S
+Rule Spain 1919 only - Apr 5 23:00s 1:00 S
+# Whitman gives 1921 Feb 28 - Oct 14; go with Shanks & Pottenger.
+Rule Spain 1924 only - Apr 16 23:00s 1:00 S
+# Whitman gives 1924 Oct 14; go with Shanks & Pottenger.
+Rule Spain 1924 only - Oct 4 23:00s 0 -
+Rule Spain 1926 only - Apr 17 23:00s 1:00 S
+# Whitman says no DST in 1929; go with Shanks & Pottenger.
+Rule Spain 1926 1929 - Oct Sat>=1 23:00s 0 -
+Rule Spain 1927 only - Apr 9 23:00s 1:00 S
+Rule Spain 1928 only - Apr 14 23:00s 1:00 S
+Rule Spain 1929 only - Apr 20 23:00s 1:00 S
+# Whitman gives 1937 Jun 16, 1938 Apr 16, 1940 Apr 13;
+# go with Shanks & Pottenger.
+Rule Spain 1937 only - May 22 23:00s 1:00 S
+Rule Spain 1937 1939 - Oct Sat>=1 23:00s 0 -
+Rule Spain 1938 only - Mar 22 23:00s 1:00 S
+Rule Spain 1939 only - Apr 15 23:00s 1:00 S
+Rule Spain 1940 only - Mar 16 23:00s 1:00 S
+# Whitman says no DST 1942-1945; go with Shanks & Pottenger.
+Rule Spain 1942 only - May 2 22:00s 2:00 M # Midsummer
+Rule Spain 1942 only - Sep 1 22:00s 1:00 S
+Rule Spain 1943 1946 - Apr Sat>=13 22:00s 2:00 M
+Rule Spain 1943 only - Oct 3 22:00s 1:00 S
+Rule Spain 1944 only - Oct 10 22:00s 1:00 S
+Rule Spain 1945 only - Sep 30 1:00 1:00 S
+Rule Spain 1946 only - Sep 30 0:00 0 -
+Rule Spain 1949 only - Apr 30 23:00 1:00 S
+Rule Spain 1949 only - Sep 30 1:00 0 -
+Rule Spain 1974 1975 - Apr Sat>=13 23:00 1:00 S
+Rule Spain 1974 1975 - Oct Sun>=1 1:00 0 -
+Rule Spain 1976 only - Mar 27 23:00 1:00 S
+Rule Spain 1976 1977 - Sep lastSun 1:00 0 -
+Rule Spain 1977 1978 - Apr 2 23:00 1:00 S
+Rule Spain 1978 only - Oct 1 1:00 0 -
+# The following rules are copied from Morocco from 1967 through 1978.
+Rule SpainAfrica 1967 only - Jun 3 12:00 1:00 S
+Rule SpainAfrica 1967 only - Oct 1 0:00 0 -
+Rule SpainAfrica 1974 only - Jun 24 0:00 1:00 S
+Rule SpainAfrica 1974 only - Sep 1 0:00 0 -
+Rule SpainAfrica 1976 1977 - May 1 0:00 1:00 S
+Rule SpainAfrica 1976 only - Aug 1 0:00 0 -
+Rule SpainAfrica 1977 only - Sep 28 0:00 0 -
+Rule SpainAfrica 1978 only - Jun 1 0:00 1:00 S
+Rule SpainAfrica 1978 only - Aug 4 0:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Madrid -0:14:44 - LMT 1901 Jan 1 0:00s
+ 0:00 Spain WE%sT 1946 Sep 30
+ 1:00 Spain CE%sT 1979
+ 1:00 EU CE%sT
+Zone Africa/Ceuta -0:21:16 - LMT 1901
+ 0:00 - WET 1918 May 6 23:00
+ 0:00 1:00 WEST 1918 Oct 7 23:00
+ 0:00 - WET 1924
+ 0:00 Spain WE%sT 1929
+ 0:00 SpainAfrica WE%sT 1984 Mar 16
+ 1:00 - CET 1986
+ 1:00 EU CE%sT
+Zone Atlantic/Canary -1:01:36 - LMT 1922 Mar # Las Palmas de Gran C.
+ -1:00 - CANT 1946 Sep 30 1:00 # Canaries Time
+ 0:00 - WET 1980 Apr 6 0:00s
+ 0:00 1:00 WEST 1980 Sep 28 0:00s
+ 0:00 EU WE%sT
+# IATA SSIM (1996-09) says the Canaries switch at 2:00u, not 1:00u.
+# Ignore this for now, as the Canaries are part of the EU.
+
+# Sweden
+
+# From Ivan Nilsson (2001-04-13), superseding Shanks & Pottenger:
+#
+# The law "Svensk forfattningssamling 1878, no 14" about standard time in 1879:
+# From the beginning of 1879 (that is 01-01 00:00) the time for all
+# places in the country is "the mean solar time for the meridian at
+# three degrees, or twelve minutes of time, to the west of the
+# meridian of the Observatory of Stockholm". The law is dated 1878-05-31.
+#
+# The observatory at that time had the meridian 18 degrees 03' 30"
+# eastern longitude = 01:12:14 in time. Less 12 minutes gives the
+# national standard time as 01:00:14 ahead of GMT....
+#
+# About the beginning of CET in Sweden. The lawtext ("Svensk
+# forfattningssamling 1899, no 44") states, that "from the beginning
+# of 1900... ... the same as the mean solar time for the meridian at
+# the distance of one hour of time from the meridian of the English
+# observatory at Greenwich, or at 12 minutes 14 seconds to the west
+# from the meridian of the Observatory of Stockholm". The law is dated
+# 1899-06-16. In short: At 1900-01-01 00:00:00 the new standard time
+# in Sweden is 01:00:00 ahead of GMT.
+#
+# 1916: The lawtext ("Svensk forfattningssamling 1916, no 124") states
+# that "1916-05-15 is considered to begin one hour earlier". It is
+# pretty obvious that at 05-14 23:00 the clocks are set to 05-15 00:00....
+# Further the law says, that "1916-09-30 is considered to end one hour later".
+#
+# The laws regulating [DST] are available on the site of the Swedish
+# Parliament beginning with 1985 - the laws regulating 1980/1984 are
+# not available on the site (to my knowledge they are only available
+# in Swedish): <http://www.riksdagen.se/english/work/sfst.asp> (type
+# "sommartid" without the quotes in the field "Fritext" and then click
+# the Sok-button).
+#
+# (2001-05-13):
+#
+# I have now found a newspaper stating that at 1916-10-01 01:00
+# summertime the church-clocks etc were set back one hour to show
+# 1916-10-01 00:00 standard time. The article also reports that some
+# people thought the switch to standard time would take place already
+# at 1916-10-01 00:00 summer time, but they had to wait for another
+# hour before the event took place.
+#
+# Source: The newspaper "Dagens Nyheter", 1916-10-01, page 7 upper left.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Stockholm 1:12:12 - LMT 1879 Jan 1
+ 1:00:14 - SET 1900 Jan 1 # Swedish Time
+ 1:00 - CET 1916 May 14 23:00
+ 1:00 1:00 CEST 1916 Oct 1 01:00
+ 1:00 - CET 1980
+ 1:00 EU CE%sT
+
+# Switzerland
+# From Howse:
+# By the end of the 18th century clocks and watches became commonplace
+# and their performance improved enormously. Communities began to keep
+# mean time in preference to apparent time -- Geneva from 1780 ....
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+# From Whitman (who writes ``Midnight?''):
+# Rule Swiss 1940 only - Nov 2 0:00 1:00 S
+# Rule Swiss 1940 only - Dec 31 0:00 0 -
+# From Shanks & Pottenger:
+# Rule Swiss 1941 1942 - May Sun>=1 2:00 1:00 S
+# Rule Swiss 1941 1942 - Oct Sun>=1 0:00 0 -
+
+# From Alois Treindl (2008-12-17):
+# I have researched the DST usage in Switzerland during the 1940ies.
+#
+# As I wrote in an earlier message, I suspected the current tzdata values
+# to be wrong. This is now verified.
+#
+# I have found copies of the original ruling by the Swiss Federal
+# government, in 'Eidgen[o]ssische Gesetzessammlung 1941 and 1942' (Swiss
+# federal law collection)...
+#
+# DST began on Monday 5 May 1941, 1:00 am by shifting the clocks to 2:00 am
+# DST ended on Monday 6 Oct 1941, 2:00 am by shifting the clocks to 1:00 am.
+#
+# DST began on Monday, 4 May 1942 at 01:00 am
+# DST ended on Monday, 5 Oct 1942 at 02:00 am
+#
+# There was no DST in 1940, I have checked the law collection carefully.
+# It is also indicated by the fact that the 1942 entry in the law
+# collection points back to 1941 as a reference, but no reference to any
+# other years are made.
+#
+# Newspaper articles I have read in the archives on 6 May 1941 reported
+# about the introduction of DST (Sommerzeit in German) during the previous
+# night as an absolute novelty, because this was the first time that such
+# a thing had happened in Switzerland.
+#
+# I have also checked 1916, because one book source (Gabriel, Traite de
+# l'heure dans le monde) claims that Switzerland had DST in 1916. This is
+# false, no official document could be found. Probably Gabriel got misled
+# by references to Germany, which introduced DST in 1916 for the first time.
+#
+# The tzdata rules for Switzerland must be changed to:
+# Rule Swiss 1941 1942 - May Mon>=1 1:00 1:00 S
+# Rule Swiss 1941 1942 - Oct Mon>=1 2:00 0 -
+#
+# The 1940 rules must be deleted.
+#
+# One further detail for Switzerland, which is probably out of scope for
+# most users of tzdata:
+# The zone file
+# Zone Europe/Zurich 0:34:08 - LMT 1848 Sep 12
+# 0:29:44 - BMT 1894 Jun #Bern Mean Time
+# 1:00 Swiss CE%sT 1981
+# 1:00 EU CE%sT
+# describes all of Switzerland correctly, with the exception of
+# the Cantone Geneve (Geneva, Genf). Between 1848 and 1894 Geneve did not
+# follow Bern Mean Time but kept its own local mean time.
+# To represent this, an extra zone would be needed.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Swiss 1941 1942 - May Mon>=1 1:00 1:00 S
+Rule Swiss 1941 1942 - Oct Mon>=1 2:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Zurich 0:34:08 - LMT 1848 Sep 12
+ 0:29:44 - BMT 1894 Jun # Bern Mean Time
+ 1:00 Swiss CE%sT 1981
+ 1:00 EU CE%sT
+
+# Turkey
+
+# From Amar Devegowda (2007-01-03):
+# The time zone rules for Istanbul, Turkey have not been changed for years now.
+# ... The latest rules are available at -
+# http://www.timeanddate.com/worldclock/timezone.html?n=107
+# From Steffen Thorsen (2007-01-03):
+# I have been able to find press records back to 1996 which all say that
+# DST started 01:00 local time and end at 02:00 local time. I am not sure
+# what happened before that. One example for each year from 1996 to 2001:
+# http://newspot.byegm.gov.tr/arsiv/1996/21/N4.htm
+# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING97/03/97X03X25.TXT
+# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING98/03/98X03X02.HTM
+# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING99/10/99X10X26.HTM#%2016
+# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2000/03/00X03X06.HTM#%2021
+# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2001/03/23x03x01.HTM#%2027
+# From Paul Eggert (2007-01-03):
+# Prefer the above source to Shanks & Pottenger for time stamps after 1990.
+
+# From Steffen Thorsen (2007-03-09):
+# Starting 2007 though, it seems that they are adopting EU's 1:00 UTC
+# start/end time, according to the following page (2007-03-07):
+# http://www.ntvmsnbc.com/news/402029.asp
+# The official document is located here - it is in Turkish...:
+# http://rega.basbakanlik.gov.tr/eskiler/2007/03/20070307-7.htm
+# I was able to locate the following seemingly official document
+# (on a non-government server though) describing dates between 2002 and 2006:
+# http://www.alomaliye.com/bkk_2002_3769.htm
+
+# From Sue Williams (2008-08-11):
+# I spotted this news article about a potential change in Turkey.
+#
+# <a href="http://www.hurriyet.com.tr/english/domestic/9626174.asp?scr=1">
+# http://www.hurriyet.com.tr/english/domestic/9626174.asp?scr=1
+# </a>
+
+# From Sue Williams (2008-08-20):
+# This article says that around the end of March 2011, Turkey wants to
+# adjust the clocks forward by 1/2 hour and stay that way permanently.
+# The article indicates that this is a change in timezone offset in addition
+# to stopping observance of DST.
+# This proposal has not yet been approved.
+#
+# Read more here...
+#
+# Turkey to abandon daylight saving time in 2011
+# <a href="http://www.turkishdailynews.com.tr/article.php?enewsid=112989">
+# http://www.turkishdailynews.com.tr/article.php?enewsid=112989
+# </a>
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Turkey 1916 only - May 1 0:00 1:00 S
+Rule Turkey 1916 only - Oct 1 0:00 0 -
+Rule Turkey 1920 only - Mar 28 0:00 1:00 S
+Rule Turkey 1920 only - Oct 25 0:00 0 -
+Rule Turkey 1921 only - Apr 3 0:00 1:00 S
+Rule Turkey 1921 only - Oct 3 0:00 0 -
+Rule Turkey 1922 only - Mar 26 0:00 1:00 S
+Rule Turkey 1922 only - Oct 8 0:00 0 -
+# Whitman gives 1923 Apr 28 - Sep 16 and no DST in 1924-1925;
+# go with Shanks & Pottenger.
+Rule Turkey 1924 only - May 13 0:00 1:00 S
+Rule Turkey 1924 1925 - Oct 1 0:00 0 -
+Rule Turkey 1925 only - May 1 0:00 1:00 S
+Rule Turkey 1940 only - Jun 30 0:00 1:00 S
+Rule Turkey 1940 only - Oct 5 0:00 0 -
+Rule Turkey 1940 only - Dec 1 0:00 1:00 S
+Rule Turkey 1941 only - Sep 21 0:00 0 -
+Rule Turkey 1942 only - Apr 1 0:00 1:00 S
+# Whitman omits the next two transition and gives 1945 Oct 1;
+# go with Shanks & Pottenger.
+Rule Turkey 1942 only - Nov 1 0:00 0 -
+Rule Turkey 1945 only - Apr 2 0:00 1:00 S
+Rule Turkey 1945 only - Oct 8 0:00 0 -
+Rule Turkey 1946 only - Jun 1 0:00 1:00 S
+Rule Turkey 1946 only - Oct 1 0:00 0 -
+Rule Turkey 1947 1948 - Apr Sun>=16 0:00 1:00 S
+Rule Turkey 1947 1950 - Oct Sun>=2 0:00 0 -
+Rule Turkey 1949 only - Apr 10 0:00 1:00 S
+Rule Turkey 1950 only - Apr 19 0:00 1:00 S
+Rule Turkey 1951 only - Apr 22 0:00 1:00 S
+Rule Turkey 1951 only - Oct 8 0:00 0 -
+Rule Turkey 1962 only - Jul 15 0:00 1:00 S
+Rule Turkey 1962 only - Oct 8 0:00 0 -
+Rule Turkey 1964 only - May 15 0:00 1:00 S
+Rule Turkey 1964 only - Oct 1 0:00 0 -
+Rule Turkey 1970 1972 - May Sun>=2 0:00 1:00 S
+Rule Turkey 1970 1972 - Oct Sun>=2 0:00 0 -
+Rule Turkey 1973 only - Jun 3 1:00 1:00 S
+Rule Turkey 1973 only - Nov 4 3:00 0 -
+Rule Turkey 1974 only - Mar 31 2:00 1:00 S
+Rule Turkey 1974 only - Nov 3 5:00 0 -
+Rule Turkey 1975 only - Mar 30 0:00 1:00 S
+Rule Turkey 1975 1976 - Oct lastSun 0:00 0 -
+Rule Turkey 1976 only - Jun 1 0:00 1:00 S
+Rule Turkey 1977 1978 - Apr Sun>=1 0:00 1:00 S
+Rule Turkey 1977 only - Oct 16 0:00 0 -
+Rule Turkey 1979 1980 - Apr Sun>=1 3:00 1:00 S
+Rule Turkey 1979 1982 - Oct Mon>=11 0:00 0 -
+Rule Turkey 1981 1982 - Mar lastSun 3:00 1:00 S
+Rule Turkey 1983 only - Jul 31 0:00 1:00 S
+Rule Turkey 1983 only - Oct 2 0:00 0 -
+Rule Turkey 1985 only - Apr 20 0:00 1:00 S
+Rule Turkey 1985 only - Sep 28 0:00 0 -
+Rule Turkey 1986 1990 - Mar lastSun 2:00s 1:00 S
+Rule Turkey 1986 1990 - Sep lastSun 2:00s 0 -
+Rule Turkey 1991 2006 - Mar lastSun 1:00s 1:00 S
+Rule Turkey 1991 1995 - Sep lastSun 1:00s 0 -
+Rule Turkey 1996 2006 - Oct lastSun 1:00s 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Europe/Istanbul 1:55:52 - LMT 1880
+ 1:56:56 - IMT 1910 Oct # Istanbul Mean Time?
+ 2:00 Turkey EE%sT 1978 Oct 15
+ 3:00 Turkey TR%sT 1985 Apr 20 # Turkey Time
+ 2:00 Turkey EE%sT 2007
+ 2:00 EU EE%sT
+Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents.
+
+# Ukraine
+#
+# From Igor Karpov, who works for the Ukranian Ministry of Justice,
+# via Garrett Wollman (2003-01-27):
+# BTW, I've found the official document on this matter. It's goverment
+# regulations number 509, May 13, 1996. In my poor translation it says:
+# "Time in Ukraine is set to second timezone (Kiev time). Each last Sunday
+# of March at 3am the time is changing to 4am and each last Sunday of
+# October the time at 4am is changing to 3am"
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+# Most of Ukraine since 1970 has been like Kiev.
+# "Kyiv" is the transliteration of the Ukrainian name, but
+# "Kiev" is more common in English.
+Zone Europe/Kiev 2:02:04 - LMT 1880
+ 2:02:04 - KMT 1924 May 2 # Kiev Mean Time
+ 2:00 - EET 1930 Jun 21
+ 3:00 - MSK 1941 Sep 20
+ 1:00 C-Eur CE%sT 1943 Nov 6
+ 3:00 Russia MSK/MSD 1990
+ 3:00 - MSK 1990 Jul 1 2:00
+ 2:00 - EET 1992
+ 2:00 E-Eur EE%sT 1995
+ 2:00 EU EE%sT
+# Ruthenia used CET 1990/1991.
+# "Uzhhorod" is the transliteration of the Ukrainian name, but
+# "Uzhgorod" is more common in English.
+Zone Europe/Uzhgorod 1:29:12 - LMT 1890 Oct
+ 1:00 - CET 1940
+ 1:00 C-Eur CE%sT 1944 Oct
+ 1:00 1:00 CEST 1944 Oct 26
+ 1:00 - CET 1945 Jun 29
+ 3:00 Russia MSK/MSD 1990
+ 3:00 - MSK 1990 Jul 1 2:00
+ 1:00 - CET 1991 Mar 31 3:00
+ 2:00 - EET 1992
+ 2:00 E-Eur EE%sT 1995
+ 2:00 EU EE%sT
+# Zaporozh'ye and eastern Lugansk oblasts observed DST 1990/1991.
+# "Zaporizhia" is the transliteration of the Ukrainian name, but
+# "Zaporozh'ye" is more common in English. Use the common English
+# spelling, except omit the apostrophe as it is not allowed in
+# portable Posix file names.
+Zone Europe/Zaporozhye 2:20:40 - LMT 1880
+ 2:20 - CUT 1924 May 2 # Central Ukraine T
+ 2:00 - EET 1930 Jun 21
+ 3:00 - MSK 1941 Aug 25
+ 1:00 C-Eur CE%sT 1943 Oct 25
+ 3:00 Russia MSK/MSD 1991 Mar 31 2:00
+ 2:00 E-Eur EE%sT 1995
+ 2:00 EU EE%sT
+# Central Crimea used Moscow time 1994/1997.
+Zone Europe/Simferopol 2:16:24 - LMT 1880
+ 2:16 - SMT 1924 May 2 # Simferopol Mean T
+ 2:00 - EET 1930 Jun 21
+ 3:00 - MSK 1941 Nov
+ 1:00 C-Eur CE%sT 1944 Apr 13
+ 3:00 Russia MSK/MSD 1990
+ 3:00 - MSK 1990 Jul 1 2:00
+ 2:00 - EET 1992
+# From Paul Eggert (2006-03-22):
+# The _Economist_ (1994-05-28, p 45) reports that central Crimea switched
+# from Kiev to Moscow time sometime after the January 1994 elections.
+# Shanks (1999) says ``date of change uncertain'', but implies that it happened
+# sometime between the 1994 DST switches. Shanks & Pottenger simply say
+# 1994-09-25 03:00, but that can't be right. For now, guess it
+# changed in May.
+ 2:00 E-Eur EE%sT 1994 May
+# From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev.
+ 3:00 E-Eur MSK/MSD 1996 Mar 31 3:00s
+ 3:00 1:00 MSD 1996 Oct 27 3:00s
+# IATA SSIM (1997-09) says Crimea switched to EET/EEST.
+# Assume it happened in March by not changing the clocks.
+ 3:00 Russia MSK/MSD 1997
+ 3:00 - MSK 1997 Mar lastSun 1:00u
+ 2:00 EU EE%sT
+
+###############################################################################
+
+# One source shows that Bulgaria, Cyprus, Finland, and Greece observe DST from
+# the last Sunday in March to the last Sunday in September in 1986.
+# The source shows Romania changing a day later than everybody else.
+#
+# According to Bernard Sieloff's source, Poland is in the MET time zone but
+# uses the WE DST rules. The Western USSR uses EET+1 and ME DST rules.
+# Bernard Sieloff's source claims Romania switches on the same day, but at
+# 00:00 standard time (i.e., 01:00 DST). It also claims that Turkey
+# switches on the same day, but switches on at 01:00 standard time
+# and off at 00:00 standard time (i.e., 01:00 DST)
+
+# ...
+# Date: Wed, 28 Jan 87 16:56:27 -0100
+# From: Tom Hofmann
+# ...
+#
+# ...the European time rules are...standardized since 1981, when
+# most European coun[tr]ies started DST. Before that year, only
+# a few countries (UK, France, Italy) had DST, each according
+# to own national rules. In 1981, however, DST started on
+# 'Apr firstSun', and not on 'Mar lastSun' as in the following
+# years...
+# But also since 1981 there are some more national exceptions
+# than listed in 'europe': Switzerland, for example, joined DST
+# one year later, Denmark ended DST on 'Oct 1' instead of 'Sep
+# lastSun' in 1981---I don't know how they handle now.
+#
+# Finally, DST ist always from 'Apr 1' to 'Oct 1' in the
+# Soviet Union (as far as I know).
+#
+# Tom Hofmann, Scientific Computer Center, CIBA-GEIGY AG,
+# 4002 Basle, Switzerland
+# ...
+
+# ...
+# Date: Wed, 4 Feb 87 22:35:22 +0100
+# From: Dik T. Winter
+# ...
+#
+# The information from Tom Hofmann is (as far as I know) not entirely correct.
+# After a request from chongo at amdahl I tried to retrieve all information
+# about DST in Europe. I was able to find all from about 1969.
+#
+# ...standardization on DST in Europe started in about 1977 with switches on
+# first Sunday in April and last Sunday in September...
+# In 1981 UK joined Europe insofar that
+# the starting day for both shifted to last Sunday in March. And from 1982
+# the whole of Europe used DST, with switch dates April 1 and October 1 in
+# the Sov[i]et Union. In 1985 the SU reverted to standard Europe[a]n switch
+# dates...
+#
+# It should also be remembered that time-zones are not constants; e.g.
+# Portugal switched in 1976 from MET (or CET) to WET with DST...
+# Note also that though there were rules for switch dates not
+# all countries abided to these dates, and many individual deviations
+# occurred, though not since 1982 I believe. Another note: it is always
+# assumed that DST is 1 hour ahead of normal time, this need not be the
+# case; at least in the Netherlands there have been times when DST was 2 hours
+# in advance of normal time.
+#
+# ...
+# dik t. winter, cwi, amsterdam, nederland
+# ...
+
+# From Bob Devine (1988-01-28):
+# ...
+# Greece: Last Sunday in April to last Sunday in September (iffy on dates).
+# Since 1978. Change at midnight.
+# ...
+# Monaco: has same DST as France.
+# ...
diff --git a/tools/zoneinfo/tzdata2009s/factory b/tools/zoneinfo/tzdata2009s/factory
new file mode 100644
index 0000000..624ccc0
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/factory
@@ -0,0 +1,11 @@
+# <pre>
+# @(#)factory 8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# For companies who don't want to put time zone specification in
+# their installation procedures. When users run date, they'll get the message.
+# Also useful for the "comp.sources" version.
+
+# Zone NAME GMTOFF RULES FORMAT
+Zone Factory 0 - "Local time zone must be set--see zic manual page"
diff --git a/tools/zoneinfo/tzdata2009s/iso3166.tab b/tools/zoneinfo/tzdata2009s/iso3166.tab
new file mode 100644
index 0000000..b8a2592
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/iso3166.tab
@@ -0,0 +1,271 @@
+# <pre>
+# @(#)iso3166.tab 8.6
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+# ISO 3166 alpha-2 country codes
+#
+# From Paul Eggert (2006-09-27):
+#
+# This file contains a table with the following columns:
+# 1. ISO 3166-1 alpha-2 country code, current as of
+# ISO 3166-1 Newsletter VI-1 (2007-09-21). See:
+# <a href="http://www.iso.org/iso/en/prods-services/iso3166ma/index.html">
+# ISO 3166 Maintenance agency (ISO 3166/MA)
+# </a>.
+# 2. The usual English name for the country,
+# chosen so that alphabetic sorting of subsets produces helpful lists.
+# This is not the same as the English name in the ISO 3166 tables.
+#
+# Columns are separated by a single tab.
+# The table is sorted by country code.
+#
+# Lines beginning with `#' are comments.
+#
+#country-
+#code country name
+AD Andorra
+AE United Arab Emirates
+AF Afghanistan
+AG Antigua & Barbuda
+AI Anguilla
+AL Albania
+AM Armenia
+AN Netherlands Antilles
+AO Angola
+AQ Antarctica
+AR Argentina
+AS Samoa (American)
+AT Austria
+AU Australia
+AW Aruba
+AX Aaland Islands
+AZ Azerbaijan
+BA Bosnia & Herzegovina
+BB Barbados
+BD Bangladesh
+BE Belgium
+BF Burkina Faso
+BG Bulgaria
+BH Bahrain
+BI Burundi
+BJ Benin
+BL St Barthelemy
+BM Bermuda
+BN Brunei
+BO Bolivia
+BR Brazil
+BS Bahamas
+BT Bhutan
+BV Bouvet Island
+BW Botswana
+BY Belarus
+BZ Belize
+CA Canada
+CC Cocos (Keeling) Islands
+CD Congo (Dem. Rep.)
+CF Central African Rep.
+CG Congo (Rep.)
+CH Switzerland
+CI Cote d'Ivoire
+CK Cook Islands
+CL Chile
+CM Cameroon
+CN China
+CO Colombia
+CR Costa Rica
+CU Cuba
+CV Cape Verde
+CX Christmas Island
+CY Cyprus
+CZ Czech Republic
+DE Germany
+DJ Djibouti
+DK Denmark
+DM Dominica
+DO Dominican Republic
+DZ Algeria
+EC Ecuador
+EE Estonia
+EG Egypt
+EH Western Sahara
+ER Eritrea
+ES Spain
+ET Ethiopia
+FI Finland
+FJ Fiji
+FK Falkland Islands
+FM Micronesia
+FO Faroe Islands
+FR France
+GA Gabon
+GB Britain (UK)
+GD Grenada
+GE Georgia
+GF French Guiana
+GG Guernsey
+GH Ghana
+GI Gibraltar
+GL Greenland
+GM Gambia
+GN Guinea
+GP Guadeloupe
+GQ Equatorial Guinea
+GR Greece
+GS South Georgia & the South Sandwich Islands
+GT Guatemala
+GU Guam
+GW Guinea-Bissau
+GY Guyana
+HK Hong Kong
+HM Heard Island & McDonald Islands
+HN Honduras
+HR Croatia
+HT Haiti
+HU Hungary
+ID Indonesia
+IE Ireland
+IL Israel
+IM Isle of Man
+IN India
+IO British Indian Ocean Territory
+IQ Iraq
+IR Iran
+IS Iceland
+IT Italy
+JE Jersey
+JM Jamaica
+JO Jordan
+JP Japan
+KE Kenya
+KG Kyrgyzstan
+KH Cambodia
+KI Kiribati
+KM Comoros
+KN St Kitts & Nevis
+KP Korea (North)
+KR Korea (South)
+KW Kuwait
+KY Cayman Islands
+KZ Kazakhstan
+LA Laos
+LB Lebanon
+LC St Lucia
+LI Liechtenstein
+LK Sri Lanka
+LR Liberia
+LS Lesotho
+LT Lithuania
+LU Luxembourg
+LV Latvia
+LY Libya
+MA Morocco
+MC Monaco
+MD Moldova
+ME Montenegro
+MF St Martin (French part)
+MG Madagascar
+MH Marshall Islands
+MK Macedonia
+ML Mali
+MM Myanmar (Burma)
+MN Mongolia
+MO Macau
+MP Northern Mariana Islands
+MQ Martinique
+MR Mauritania
+MS Montserrat
+MT Malta
+MU Mauritius
+MV Maldives
+MW Malawi
+MX Mexico
+MY Malaysia
+MZ Mozambique
+NA Namibia
+NC New Caledonia
+NE Niger
+NF Norfolk Island
+NG Nigeria
+NI Nicaragua
+NL Netherlands
+NO Norway
+NP Nepal
+NR Nauru
+NU Niue
+NZ New Zealand
+OM Oman
+PA Panama
+PE Peru
+PF French Polynesia
+PG Papua New Guinea
+PH Philippines
+PK Pakistan
+PL Poland
+PM St Pierre & Miquelon
+PN Pitcairn
+PR Puerto Rico
+PS Palestine
+PT Portugal
+PW Palau
+PY Paraguay
+QA Qatar
+RE Reunion
+RO Romania
+RS Serbia
+RU Russia
+RW Rwanda
+SA Saudi Arabia
+SB Solomon Islands
+SC Seychelles
+SD Sudan
+SE Sweden
+SG Singapore
+SH St Helena
+SI Slovenia
+SJ Svalbard & Jan Mayen
+SK Slovakia
+SL Sierra Leone
+SM San Marino
+SN Senegal
+SO Somalia
+SR Suriname
+ST Sao Tome & Principe
+SV El Salvador
+SY Syria
+SZ Swaziland
+TC Turks & Caicos Is
+TD Chad
+TF French Southern & Antarctic Lands
+TG Togo
+TH Thailand
+TJ Tajikistan
+TK Tokelau
+TL East Timor
+TM Turkmenistan
+TN Tunisia
+TO Tonga
+TR Turkey
+TT Trinidad & Tobago
+TV Tuvalu
+TW Taiwan
+TZ Tanzania
+UA Ukraine
+UG Uganda
+UM US minor outlying islands
+US United States
+UY Uruguay
+UZ Uzbekistan
+VA Vatican City
+VC St Vincent
+VE Venezuela
+VG Virgin Islands (UK)
+VI Virgin Islands (US)
+VN Vietnam
+VU Vanuatu
+WF Wallis & Futuna
+WS Samoa (western)
+YE Yemen
+YT Mayotte
+ZA South Africa
+ZM Zambia
+ZW Zimbabwe
diff --git a/tools/zoneinfo/tzdata2009s/leapseconds b/tools/zoneinfo/tzdata2009s/leapseconds
new file mode 100644
index 0000000..a3c95ef
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/leapseconds
@@ -0,0 +1,87 @@
+# <pre>
+# @(#)leapseconds 8.9
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# Allowance for leapseconds added to each timezone file.
+
+# The International Earth Rotation Service periodically uses leap seconds
+# to keep UTC to within 0.9 s of UT1
+# (which measures the true angular orientation of the earth in space); see
+# Terry J Quinn, The BIPM and the accurate measure of time,
+# Proc IEEE 79, 7 (July 1991), 894-905.
+# There were no leap seconds before 1972, because the official mechanism
+# accounting for the discrepancy between atomic time and the earth's rotation
+# did not exist until the early 1970s.
+
+# The correction (+ or -) is made at the given time, so lines
+# will typically look like:
+# Leap YEAR MON DAY 23:59:60 + R/S
+# or
+# Leap YEAR MON DAY 23:59:59 - R/S
+
+# If the leapsecond is Rolling (R) the given time is local time
+# If the leapsecond is Stationary (S) the given time is UTC
+
+# Leap YEAR MONTH DAY HH:MM:SS CORR R/S
+Leap 1972 Jun 30 23:59:60 + S
+Leap 1972 Dec 31 23:59:60 + S
+Leap 1973 Dec 31 23:59:60 + S
+Leap 1974 Dec 31 23:59:60 + S
+Leap 1975 Dec 31 23:59:60 + S
+Leap 1976 Dec 31 23:59:60 + S
+Leap 1977 Dec 31 23:59:60 + S
+Leap 1978 Dec 31 23:59:60 + S
+Leap 1979 Dec 31 23:59:60 + S
+Leap 1981 Jun 30 23:59:60 + S
+Leap 1982 Jun 30 23:59:60 + S
+Leap 1983 Jun 30 23:59:60 + S
+Leap 1985 Jun 30 23:59:60 + S
+Leap 1987 Dec 31 23:59:60 + S
+Leap 1989 Dec 31 23:59:60 + S
+Leap 1990 Dec 31 23:59:60 + S
+Leap 1992 Jun 30 23:59:60 + S
+Leap 1993 Jun 30 23:59:60 + S
+Leap 1994 Jun 30 23:59:60 + S
+Leap 1995 Dec 31 23:59:60 + S
+Leap 1997 Jun 30 23:59:60 + S
+Leap 1998 Dec 31 23:59:60 + S
+Leap 2005 Dec 31 23:59:60 + S
+Leap 2008 Dec 31 23:59:60 + S
+
+# INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS)
+#
+# SERVICE INTERNATIONAL DE LA ROTATION TERRESTRE ET DES SYSTEMES DE REFERENCE
+#
+# SERVICE DE LA ROTATION TERRESTRE
+# OBSERVATOIRE DE PARIS
+# 61, Av. de l'Observatoire 75014 PARIS (France)
+# Tel. : 33 (0) 1 40 51 22 26
+# FAX : 33 (0) 1 40 51 22 91
+# Internet : services.iers@obspm.fr
+#
+# Paris, 4 July 2009
+#
+# Bulletin C 38
+#
+# To authorities responsible
+# for the measurement and
+# distribution of time
+#
+# INFORMATION ON UTC - TAI
+#
+# NO positive leap second will be introduced at the end of December 2009.
+# The difference between Coordinated Universal Time UTC and the
+# International Atomic Time TAI is :
+#
+# from 2009 January 1, 0h UTC, until further notice : UTC-TAI = -34 s
+#
+# Leap seconds can be introduced in UTC at the end of the months of December
+# or June, depending on the evolution of UT1-TAI. Bulletin C is mailed every
+# six months, either to announce a time step in UTC, or to confirm that there
+# will be no time step at the next possible date.
+#
+# Daniel GAMBIS
+# Director
+# Earth Orientation Center of IERS
+# Observatoire de Paris, France
diff --git a/tools/zoneinfo/tzdata2009s/northamerica b/tools/zoneinfo/tzdata2009s/northamerica
new file mode 100644
index 0000000..236922d
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/northamerica
@@ -0,0 +1,2680 @@
+# <pre>
+# @(#)northamerica 8.28
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# also includes Central America and the Caribbean
+
+# This data is by no means authoritative; if you think you know better,
+# go ahead and edit the file (and please send any changes to
+# tz@elsie.nci.nih.gov for general use in the future).
+
+# From Paul Eggert (1999-03-22):
+# A reliable and entertaining source about time zones is
+# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+
+###############################################################################
+
+# United States
+
+# From Paul Eggert (1999-03-31):
+# Howse writes (pp 121-125) that time zones were invented by
+# Professor Charles Ferdinand Dowd (1825-1904),
+# Principal of Temple Grove Ladies' Seminary (Saratoga Springs, NY).
+# His pamphlet ``A System of National Time for Railroads'' (1870)
+# was the result of his proposals at the Convention of Railroad Trunk Lines
+# in New York City (1869-10). His 1870 proposal was based on Washington, DC,
+# but in 1872-05 he moved the proposed origin to Greenwich.
+# His proposal was adopted by the railroads on 1883-11-18 at 12:00,
+# and the most of the country soon followed suit.
+
+# From Paul Eggert (2005-04-16):
+# That 1883 transition occurred at 12:00 new time, not at 12:00 old time.
+# See p 46 of David Prerau, Seize the daylight, Thunder's Mouth Press (2005).
+
+# From Paul Eggert (2006-03-22):
+# A good source for time zone historical data in the US is
+# Thomas G. Shanks, The American Atlas (5th edition),
+# San Diego: ACS Publications, Inc. (1991).
+# Make sure you have the errata sheet; the book is somewhat useless without it.
+# It is the source for most of the pre-1991 US entries below.
+
+# From Paul Eggert (2001-03-06):
+# Daylight Saving Time was first suggested as a joke by Benjamin Franklin
+# in his whimsical essay ``An Economical Project for Diminishing the Cost
+# of Light'' published in the Journal de Paris (1784-04-26).
+# Not everyone is happy with the results:
+#
+# I don't really care how time is reckoned so long as there is some
+# agreement about it, but I object to being told that I am saving
+# daylight when my reason tells me that I am doing nothing of the kind.
+# I even object to the implication that I am wasting something
+# valuable if I stay in bed after the sun has risen. As an admirer
+# of moonlight I resent the bossy insistence of those who want to
+# reduce my time for enjoying it. At the back of the Daylight Saving
+# scheme I detect the bony, blue-fingered hand of Puritanism, eager
+# to push people into bed earlier, and get them up earlier, to make
+# them healthy, wealthy and wise in spite of themselves.
+#
+# -- Robertson Davies, The diary of Samuel Marchbanks,
+# Clarke, Irwin (1947), XIX, Sunday
+#
+# For more about the first ten years of DST in the United States, see
+# Robert Garland's <a href="http://www.clpgh.org/exhibit/dst.html">
+# Ten years of daylight saving from the Pittsburgh standpoint
+# (Carnegie Library of Pittsburgh, 1927)</a>.
+#
+# Shanks says that DST was called "War Time" in the US in 1918 and 1919.
+# However, DST was imposed by the Standard Time Act of 1918, which
+# was the first nationwide legal time standard, and apparently
+# time was just called "Standard Time" or "Daylight Saving Time".
+
+# From Arthur David Olson:
+# US Daylight Saving Time ended on the last Sunday of *October* in 1974.
+# See, for example, the front page of the Saturday, 1974-10-26
+# and Sunday, 1974-10-27 editions of the Washington Post.
+
+# From Arthur David Olson:
+# Before the Uniform Time Act of 1966 took effect in 1967, observance of
+# Daylight Saving Time in the US was by local option, except during wartime.
+
+# From Arthur David Olson (2000-09-25):
+# Last night I heard part of a rebroadcast of a 1945 Arch Oboler radio drama.
+# In the introduction, Oboler spoke of "Eastern Peace Time."
+# An AltaVista search turned up
+# <a href="http://rowayton.org/rhs/hstaug45.html">:
+# "When the time is announced over the radio now, it is 'Eastern Peace
+# Time' instead of the old familiar 'Eastern War Time.' Peace is wonderful."
+# </a> (August 1945) by way of confirmation.
+
+# From Joseph Gallant citing
+# George H. Douglas, _The Early Days of Radio Broadcasting_ (1987):
+# At 7 P.M. (Eastern War Time) [on 1945-08-14], the networks were set
+# to switch to London for Attlee's address, but the American people
+# never got to hear his speech live. According to one press account,
+# CBS' Bob Trout was first to announce the word of Japan's surrender,
+# but a few seconds later, NBC, ABC and Mutual also flashed the word
+# of surrender, all of whom interrupting the bells of Big Ben in
+# London which were to precede Mr. Attlee's speech.
+
+# From Paul Eggert (2003-02-09): It was Robert St John, not Bob Trout. From
+# Myrna Oliver's obituary of St John on page B16 of today's Los Angeles Times:
+#
+# ... a war-weary U.S. clung to radios, awaiting word of Japan's surrender.
+# Any announcement from Asia would reach St. John's New York newsroom on a
+# wire service teletype machine, which had prescribed signals for major news.
+# Associated Press, for example, would ring five bells before spewing out
+# typed copy of an important story, and 10 bells for news "of transcendental
+# importance."
+#
+# On Aug. 14, stalling while talking steadily into the NBC networks' open
+# microphone, St. John heard five bells and waited only to hear a sixth bell,
+# before announcing confidently: "Ladies and gentlemen, World War II is over.
+# The Japanese have agreed to our surrender terms."
+#
+# He had scored a 20-second scoop on other broadcasters.
+
+# From Arthur David Olson (2005-08-22):
+# Paul has been careful to use the "US" rules only in those locations
+# that are part of the United States; this reflects the real scope of
+# U.S. government action. So even though the "US" rules have changed
+# in the latest release, other countries won't be affected.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule US 1918 1919 - Mar lastSun 2:00 1:00 D
+Rule US 1918 1919 - Oct lastSun 2:00 0 S
+Rule US 1942 only - Feb 9 2:00 1:00 W # War
+Rule US 1945 only - Aug 14 23:00u 1:00 P # Peace
+Rule US 1945 only - Sep 30 2:00 0 S
+Rule US 1967 2006 - Oct lastSun 2:00 0 S
+Rule US 1967 1973 - Apr lastSun 2:00 1:00 D
+Rule US 1974 only - Jan 6 2:00 1:00 D
+Rule US 1975 only - Feb 23 2:00 1:00 D
+Rule US 1976 1986 - Apr lastSun 2:00 1:00 D
+Rule US 1987 2006 - Apr Sun>=1 2:00 1:00 D
+Rule US 2007 max - Mar Sun>=8 2:00 1:00 D
+Rule US 2007 max - Nov Sun>=1 2:00 0 S
+
+# From Arthur David Olson, 2005-12-19
+# We generate the files specified below to guard against old files with
+# obsolete information being left in the time zone binary directory.
+# We limit the list to names that have appeared in previous versions of
+# this time zone package.
+# We do these as separate Zones rather than as Links to avoid problems if
+# a particular place changes whether it observes DST.
+# We put these specifications here in the northamerica file both to
+# increase the chances that they'll actually get compiled and to
+# avoid the need to duplicate the US rules in another file.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone EST -5:00 - EST
+Zone MST -7:00 - MST
+Zone HST -10:00 - HST
+Zone EST5EDT -5:00 US E%sT
+Zone CST6CDT -6:00 US C%sT
+Zone MST7MDT -7:00 US M%sT
+Zone PST8PDT -8:00 US P%sT
+
+# From Bob Devine (1988-01-28):
+# ...Alaska (and Hawaii) had the timezone names changed in 1967.
+# old new
+# Pacific Standard Time(PST) -same-
+# Yukon Standard Time(YST) -same-
+# Central Alaska S.T. (CAT) Alaska-Hawaii St[an]dard Time (AHST)
+# Nome Standard Time (NT) Bering Standard Time (BST)
+#
+# ...Alaska's timezone lines were redrawn in 1983 to give only 2 tz.
+# The YST zone now covers nearly all of the state, AHST just part
+# of the Aleutian islands. No DST.
+
+# From Paul Eggert (1995-12-19):
+# The tables below use `NST', not `NT', for Nome Standard Time.
+# I invented `CAWT' for Central Alaska War Time.
+
+# From U. S. Naval Observatory (1989-01-19):
+# USA EASTERN 5 H BEHIND UTC NEW YORK, WASHINGTON
+# USA EASTERN 4 H BEHIND UTC APR 3 - OCT 30
+# USA CENTRAL 6 H BEHIND UTC CHICAGO, HOUSTON
+# USA CENTRAL 5 H BEHIND UTC APR 3 - OCT 30
+# USA MOUNTAIN 7 H BEHIND UTC DENVER
+# USA MOUNTAIN 6 H BEHIND UTC APR 3 - OCT 30
+# USA PACIFIC 8 H BEHIND UTC L.A., SAN FRANCISCO
+# USA PACIFIC 7 H BEHIND UTC APR 3 - OCT 30
+# USA ALASKA STD 9 H BEHIND UTC MOST OF ALASKA (AKST)
+# USA ALASKA STD 8 H BEHIND UTC APR 3 - OCT 30 (AKDT)
+# USA ALEUTIAN 10 H BEHIND UTC ISLANDS WEST OF 170W
+# USA - " - 9 H BEHIND UTC APR 3 - OCT 30
+# USA HAWAII 10 H BEHIND UTC
+# USA BERING 11 H BEHIND UTC SAMOA, MIDWAY
+
+# From Arthur David Olson (1989-01-21):
+# The above dates are for 1988.
+# Note the "AKST" and "AKDT" abbreviations, the claim that there's
+# no DST in Samoa, and the claim that there is DST in Alaska and the
+# Aleutians.
+
+# From Arthur David Olson (1988-02-13):
+# Legal standard time zone names, from United States Code (1982 Edition and
+# Supplement III), Title 15, Chapter 6, Section 260 and forward. First, names
+# up to 1967-04-01 (when most provisions of the Uniform Time Act of 1966
+# took effect), as explained in sections 263 and 261:
+# (none)
+# United States standard eastern time
+# United States standard mountain time
+# United States standard central time
+# United States standard Pacific time
+# (none)
+# United States standard Alaska time
+# (none)
+# Next, names from 1967-04-01 until 1983-11-30 (the date for
+# public law 98-181):
+# Atlantic standard time
+# eastern standard time
+# central standard time
+# mountain standard time
+# Pacific standard time
+# Yukon standard time
+# Alaska-Hawaii standard time
+# Bering standard time
+# And after 1983-11-30:
+# Atlantic standard time
+# eastern standard time
+# central standard time
+# mountain standard time
+# Pacific standard time
+# Alaska standard time
+# Hawaii-Aleutian standard time
+# Samoa standard time
+# The law doesn't give abbreviations.
+#
+# From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
+# Public law 106-564 (2000-12-23) introduced the abbreviation
+# "Chamorro Standard Time" for time in Guam and the Northern Marianas.
+# See the file "australasia".
+
+# From Arthur David Olson, 2005-08-09
+# The following was signed into law on 2005-08-08.
+#
+# H.R. 6, Energy Policy Act of 2005, SEC. 110. DAYLIGHT SAVINGS.
+# (a) Amendment- Section 3(a) of the Uniform Time Act of 1966 (15
+# U.S.C. 260a(a)) is amended--
+# (1) by striking `first Sunday of April' and inserting `second
+# Sunday of March'; and
+# (2) by striking `last Sunday of October' and inserting `first
+# Sunday of November'.
+# (b) Effective Date- Subsection (a) shall take effect 1 year after the
+# date of enactment of this Act or March 1, 2007, whichever is later.
+# (c) Report to Congress- Not later than 9 months after the effective
+# date stated in subsection (b), the Secretary shall report to Congress
+# on the impact of this section on energy consumption in the United
+# States.
+# (d) Right to Revert- Congress retains the right to revert the
+# Daylight Saving Time back to the 2005 time schedules once the
+# Department study is complete.
+
+# US eastern time, represented by New York
+
+# Connecticut, Delaware, District of Columbia, most of Florida,
+# Georgia, southeast Indiana (Dearborn and Ohio counties), eastern Kentucky
+# (except America/Kentucky/Louisville below), Maine, Maryland, Massachusetts,
+# New Hampshire, New Jersey, New York, North Carolina, Ohio,
+# Pennsylvania, Rhode Island, South Carolina, eastern Tennessee,
+# Vermont, Virginia, West Virginia
+
+# From Dave Cantor (2004-11-02):
+# Early this summer I had the occasion to visit the Mount Washington
+# Observatory weather station atop (of course!) Mount Washington [, NH]....
+# One of the staff members said that the station was on Eastern Standard Time
+# and didn't change their clocks for Daylight Saving ... so that their
+# reports will always have times which are 5 hours behind UTC.
+
+# From Paul Eggert (2005-08-26):
+# According to today's Huntsville Times
+# <http://www.al.com/news/huntsvilletimes/index.ssf?/base/news/1125047783228320.xml&coll=1>
+# a few towns on Alabama's "eastern border with Georgia, such as Phenix City
+# in Russell County, Lanett in Chambers County and some towns in Lee County,
+# set their watches and clocks on Eastern time." It quotes H.H. "Bubba"
+# Roberts, city administrator in Phenix City. as saying "We are in the Central
+# time zone, but we do go by the Eastern time zone because so many people work
+# in Columbus."
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule NYC 1920 only - Mar lastSun 2:00 1:00 D
+Rule NYC 1920 only - Oct lastSun 2:00 0 S
+Rule NYC 1921 1966 - Apr lastSun 2:00 1:00 D
+Rule NYC 1921 1954 - Sep lastSun 2:00 0 S
+Rule NYC 1955 1966 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/New_York -4:56:02 - LMT 1883 Nov 18 12:03:58
+ -5:00 US E%sT 1920
+ -5:00 NYC E%sT 1942
+ -5:00 US E%sT 1946
+ -5:00 NYC E%sT 1967
+ -5:00 US E%sT
+
+# US central time, represented by Chicago
+
+# Alabama, Arkansas, Florida panhandle (Bay, Calhoun, Escambia,
+# Gulf, Holmes, Jackson, Okaloosa, Santa Rosa, Walton, and
+# Washington counties), Illinois, western Indiana
+# (Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer,
+# Vanderburgh, and Warrick counties), Iowa, most of Kansas, western
+# Kentucky, Louisiana, Minnesota, Mississippi, Missouri, eastern
+# Nebraska, eastern North Dakota, Oklahoma, eastern South Dakota,
+# western Tennessee, most of Texas, Wisconsin
+
+# From Larry M. Smith (2006-04-26) re Wisconsin:
+# http://www.legis.state.wi.us/statutes/Stat0175.pdf ...
+# is currently enforced at the 01:00 time of change. Because the local
+# "bar time" in the state corresponds to 02:00, a number of citations
+# are issued for the "sale of class 'B' alcohol after prohibited
+# hours" within the deviated hour of this change every year....
+#
+# From Douglas R. Bomberg (2007-03-12):
+# Wisconsin has enacted (nearly eleventh-hour) legislation to get WI
+# Statue 175 closer in synch with the US Congress' intent....
+# http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Chicago 1920 only - Jun 13 2:00 1:00 D
+Rule Chicago 1920 1921 - Oct lastSun 2:00 0 S
+Rule Chicago 1921 only - Mar lastSun 2:00 1:00 D
+Rule Chicago 1922 1966 - Apr lastSun 2:00 1:00 D
+Rule Chicago 1922 1954 - Sep lastSun 2:00 0 S
+Rule Chicago 1955 1966 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:09:24
+ -6:00 US C%sT 1920
+ -6:00 Chicago C%sT 1936 Mar 1 2:00
+ -5:00 - EST 1936 Nov 15 2:00
+ -6:00 Chicago C%sT 1942
+ -6:00 US C%sT 1946
+ -6:00 Chicago C%sT 1967
+ -6:00 US C%sT
+# Oliver County, ND switched from mountain to central time on 1992-10-25.
+Zone America/North_Dakota/Center -6:45:12 - LMT 1883 Nov 18 12:14:48
+ -7:00 US M%sT 1992 Oct 25 02:00
+ -6:00 US C%sT
+# Morton County, ND, switched from mountain to central time on
+# 2003-10-26, except for the area around Mandan which was already central time.
+# See <http://dmses.dot.gov/docimages/p63/135818.pdf>.
+# Officially this switch also included part of Sioux County, and
+# Jones, Mellette, and Todd Counties in South Dakota;
+# but in practice these other counties were already observing central time.
+# See <http://www.epa.gov/fedrgstr/EPA-IMPACT/2003/October/Day-28/i27056.htm>.
+Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21
+ -7:00 US M%sT 2003 Oct 26 02:00
+ -6:00 US C%sT
+
+# US mountain time, represented by Denver
+#
+# Colorado, far western Kansas, Montana, western
+# Nebraska, Nevada border (Jackpot, Owyhee, and Mountain City),
+# New Mexico, southwestern North Dakota,
+# western South Dakota, far western Texas (El Paso County, Hudspeth County,
+# and Pine Springs and Nickel Creek in Culberson County), Utah, Wyoming
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Denver 1920 1921 - Mar lastSun 2:00 1:00 D
+Rule Denver 1920 only - Oct lastSun 2:00 0 S
+Rule Denver 1921 only - May 22 2:00 0 S
+Rule Denver 1965 1966 - Apr lastSun 2:00 1:00 D
+Rule Denver 1965 1966 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Denver -6:59:56 - LMT 1883 Nov 18 12:00:04
+ -7:00 US M%sT 1920
+ -7:00 Denver M%sT 1942
+ -7:00 US M%sT 1946
+ -7:00 Denver M%sT 1967
+ -7:00 US M%sT
+
+# US Pacific time, represented by Los Angeles
+#
+# California, northern Idaho (Benewah, Bonner, Boundary, Clearwater,
+# Idaho, Kootenai, Latah, Lewis, Nez Perce, and Shoshone counties,
+# and the northern three-quarters of Idaho county),
+# most of Nevada, most of Oregon, and Washington
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule CA 1948 only - Mar 14 2:00 1:00 D
+Rule CA 1949 only - Jan 1 2:00 0 S
+Rule CA 1950 1966 - Apr lastSun 2:00 1:00 D
+Rule CA 1950 1961 - Sep lastSun 2:00 0 S
+Rule CA 1962 1966 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Los_Angeles -7:52:58 - LMT 1883 Nov 18 12:07:02
+ -8:00 US P%sT 1946
+ -8:00 CA P%sT 1967
+ -8:00 US P%sT
+
+# Alaska
+# AK%sT is the modern abbreviation for -9:00 per USNO.
+#
+# From Paul Eggert (2001-05-30):
+# Howse writes that Alaska switched from the Julian to the Gregorian calendar,
+# and from east-of-GMT to west-of-GMT days, when the US bought it from Russia.
+# This was on 1867-10-18, a Friday; the previous day was 1867-10-06 Julian,
+# also a Friday. Include only the time zone part of this transition,
+# ignoring the switch from Julian to Gregorian, since we can't represent
+# the Julian calendar.
+#
+# As far as we know, none of the exact locations mentioned below were
+# permanently inhabited in 1867 by anyone using either calendar.
+# (Yakutat was colonized by the Russians in 1799, but the settlement
+# was destroyed in 1805 by a Yakutat-kon war party.) However, there
+# were nearby inhabitants in some cases and for our purposes perhaps
+# it's best to simply use the official transition.
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Juneau 15:02:19 - LMT 1867 Oct 18
+ -8:57:41 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+ -8:00 - PST 1969
+ -8:00 US P%sT 1983 Oct 30 2:00
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18
+ -9:18:55 - LMT 1900 Aug 20 12:00
+ -9:00 - YST 1942
+ -9:00 US Y%sT 1946
+ -9:00 - YST 1969
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+Zone America/Anchorage 14:00:24 - LMT 1867 Oct 18
+ -9:59:36 - LMT 1900 Aug 20 12:00
+ -10:00 - CAT 1942
+ -10:00 US CAT/CAWT 1945 Aug 14 23:00u
+ -10:00 US CAT/CAPT 1946 # Peace
+ -10:00 - CAT 1967 Apr
+ -10:00 - AHST 1969
+ -10:00 US AH%sT 1983 Oct 30 2:00
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+Zone America/Nome 12:58:21 - LMT 1867 Oct 18
+ -11:01:38 - LMT 1900 Aug 20 12:00
+ -11:00 - NST 1942
+ -11:00 US N%sT 1946
+ -11:00 - NST 1967 Apr
+ -11:00 - BST 1969
+ -11:00 US B%sT 1983 Oct 30 2:00
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+Zone America/Adak 12:13:21 - LMT 1867 Oct 18
+ -11:46:38 - LMT 1900 Aug 20 12:00
+ -11:00 - NST 1942
+ -11:00 US N%sT 1946
+ -11:00 - NST 1967 Apr
+ -11:00 - BST 1969
+ -11:00 US B%sT 1983 Oct 30 2:00
+ -10:00 US AH%sT 1983 Nov 30
+ -10:00 US HA%sT
+# The following switches don't quite make our 1970 cutoff.
+#
+# Shanks writes that part of southwest Alaska (e.g. Aniak)
+# switched from -11:00 to -10:00 on 1968-09-22 at 02:00,
+# and another part (e.g. Akiak) made the same switch five weeks later.
+#
+# From David Flater (2004-11-09):
+# In e-mail, 2004-11-02, Ray Hudson, historian/liaison to the Unalaska
+# Historic Preservation Commission, provided this information, which
+# suggests that Unalaska deviated from statutory time from early 1967
+# possibly until 1983:
+#
+# Minutes of the Unalaska City Council Meeting, January 10, 1967:
+# "Except for St. Paul and Akutan, Unalaska is the only important
+# location not on Alaska Standard Time. The following resolution was
+# made by William Robinson and seconded by Henry Swanson: Be it
+# resolved that the City of Unalaska hereby goes to Alaska Standard
+# Time as of midnight Friday, January 13, 1967 (1 A.M. Saturday,
+# January 14, Alaska Standard Time.) This resolution was passed with
+# three votes for and one against."
+
+# Hawaii
+#
+# From Arthur David Olson:
+# And then there's Hawaii.
+# DST was observed for one day in 1933;
+# standard time was changed by half an hour in 1947;
+# it's always standard as of 1986.
+#
+# From Paul Eggert:
+# Shanks says the 1933 experiment lasted for three weeks. Go with Shanks.
+#
+Zone Pacific/Honolulu -10:31:26 - LMT 1900 Jan 1 12:00
+ -10:30 - HST 1933 Apr 30 2:00
+ -10:30 1:00 HDT 1933 May 21 2:00
+ -10:30 US H%sT 1947 Jun 8 2:00
+ -10:00 - HST
+
+# Now we turn to US areas that have diverged from the consensus since 1970.
+
+# Arizona mostly uses MST.
+
+# From Paul Eggert (2002-10-20):
+#
+# The information in the rest of this paragraph is derived from the
+# <a href="http://www.dlapr.lib.az.us/links/daylight.htm">
+# Daylight Saving Time web page (2002-01-23)</a> maintained by the
+# Arizona State Library, Archives and Public Records.
+# Between 1944-01-01 and 1944-04-01 the State of Arizona used standard
+# time, but by federal law railroads, airlines, bus lines, military
+# personnel, and some engaged in interstate commerce continued to
+# observe war (i.e., daylight saving) time. The 1944-03-17 Phoenix
+# Gazette says that was the date the law changed, and that 04-01 was
+# the date the state's clocks would change. In 1945 the State of
+# Arizona used standard time all year, again with exceptions only as
+# mandated by federal law. Arizona observed DST in 1967, but Arizona
+# Laws 1968, ch. 183 (effective 1968-03-21) repealed DST.
+#
+# Shanks says the 1944 experiment came to an end on 1944-03-17.
+# Go with the Arizona State Library instead.
+
+Zone America/Phoenix -7:28:18 - LMT 1883 Nov 18 11:31:42
+ -7:00 US M%sT 1944 Jan 1 00:01
+ -7:00 - MST 1944 Apr 1 00:01
+ -7:00 US M%sT 1944 Oct 1 00:01
+ -7:00 - MST 1967
+ -7:00 US M%sT 1968 Mar 21
+ -7:00 - MST
+# From Arthur David Olson (1988-02-13):
+# A writer from the Inter Tribal Council of Arizona, Inc.,
+# notes in private correspondence dated 1987-12-28 that "Presently, only the
+# Navajo Nation participates in the Daylight Saving Time policy, due to its
+# large size and location in three states." (The "only" means that other
+# tribal nations don't use DST.)
+
+Link America/Denver America/Shiprock
+
+# Southern Idaho (Ada, Adams, Bannock, Bear Lake, Bingham, Blaine,
+# Boise, Bonneville, Butte, Camas, Canyon, Caribou, Cassia, Clark,
+# Custer, Elmore, Franklin, Fremont, Gem, Gooding, Jefferson, Jerome,
+# Lemhi, Lincoln, Madison, Minidoka, Oneida, Owyhee, Payette, Power,
+# Teton, Twin Falls, Valley, Washington counties, and the southern
+# quarter of Idaho county) and eastern Oregon (most of Malheur County)
+# switched four weeks late in 1974.
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11
+ -8:00 US P%sT 1923 May 13 2:00
+ -7:00 US M%sT 1974
+ -7:00 - MST 1974 Feb 3 2:00
+ -7:00 US M%sT
+
+# Indiana
+#
+# For a map of Indiana's time zone regions, see:
+# <a href="http://www.mccsc.edu/time.html">
+# What time is it in Indiana?
+# </a> (2006-03-01)
+#
+# From Paul Eggert (2007-08-17):
+# Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
+# with the following exceptions:
+#
+# - Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer,
+# Vandenburgh, and Warrick counties have been like America/Chicago.
+#
+# - Dearborn and Ohio counties have been like America/New_York.
+#
+# - Clark, Floyd, and Harrison counties have been like
+# America/Kentucky/Louisville.
+#
+# - Crawford, Daviess, Dubois, Knox, Martin, Perry, Pike, Pulaski, Starke,
+# and Switzerland counties have their own time zone histories as noted below.
+#
+# Shanks partitioned Indiana into 345 regions, each with its own time history,
+# and wrote ``Even newspaper reports present contradictory information.''
+# Those Hoosiers! Such a flighty and changeable people!
+# Fortunately, most of the complexity occurred before our cutoff date of 1970.
+#
+# Other than Indianapolis, the Indiana place names are so nondescript
+# that they would be ambiguous if we left them at the `America' level.
+# So we reluctantly put them all in a subdirectory `America/Indiana'.
+
+# From Paul Eggert (2005-08-16):
+# http://www.mccsc.edu/time.html says that Indiana will use DST starting 2006.
+
+# From Nathan Stratton Treadway (2006-03-30):
+# http://www.dot.gov/affairs/dot0406.htm [3705 B]
+# From Deborah Goldsmith (2006-01-18):
+# http://dmses.dot.gov/docimages/pdf95/382329_web.pdf [2.9 MB]
+# From Paul Eggert (2006-01-20):
+# It says "DOT is relocating the time zone boundary in Indiana to move Starke,
+# Pulaski, Knox, Daviess, Martin, Pike, Dubois, and Perry Counties from the
+# Eastern Time Zone to the Central Time Zone.... The effective date of
+# this rule is 2:OO a.m. EST Sunday, April 2, 2006, which is the
+# changeover date from standard time to Daylight Saving Time."
+# Strictly speaking, this means the affected counties will change their
+# clocks twice that night, but this obviously is in error. The intent
+# is that 01:59:59 EST be followed by 02:00:00 CDT.
+
+# From Gwillim Law (2007-02-10):
+# The Associated Press has been reporting that Pulaski County, Indiana is
+# going to switch from Central to Eastern Time on March 11, 2007....
+# http://www.indystar.com/apps/pbcs.dll/article?AID=/20070207/LOCAL190108/702070524/0/LOCAL
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Indianapolis 1941 only - Jun 22 2:00 1:00 D
+Rule Indianapolis 1941 1954 - Sep lastSun 2:00 0 S
+Rule Indianapolis 1946 1954 - Apr lastSun 2:00 1:00 D
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22
+ -6:00 US C%sT 1920
+ -6:00 Indianapolis C%sT 1942
+ -6:00 US C%sT 1946
+ -6:00 Indianapolis C%sT 1955 Apr 24 2:00
+ -5:00 - EST 1957 Sep 29 2:00
+ -6:00 - CST 1958 Apr 27 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+ -5:00 - EST 2006
+ -5:00 US E%sT
+#
+# Eastern Crawford County, Indiana, left its clocks alone in 1974,
+# as well as from 1976 through 2005.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Marengo 1951 only - Apr lastSun 2:00 1:00 D
+Rule Marengo 1951 only - Sep lastSun 2:00 0 S
+Rule Marengo 1954 1960 - Apr lastSun 2:00 1:00 D
+Rule Marengo 1954 1960 - Sep lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Indiana/Marengo -5:45:23 - LMT 1883 Nov 18 12:14:37
+ -6:00 US C%sT 1951
+ -6:00 Marengo C%sT 1961 Apr 30 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1974 Jan 6 2:00
+ -6:00 1:00 CDT 1974 Oct 27 2:00
+ -5:00 US E%sT 1976
+ -5:00 - EST 2006
+ -5:00 US E%sT
+#
+# Daviess, Dubois, Knox, and Martin Counties, Indiana,
+# switched from eastern to central time in April 2006, then switched back
+# in November 2007.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Vincennes 1946 only - Apr lastSun 2:00 1:00 D
+Rule Vincennes 1946 only - Sep lastSun 2:00 0 S
+Rule Vincennes 1953 1954 - Apr lastSun 2:00 1:00 D
+Rule Vincennes 1953 1959 - Sep lastSun 2:00 0 S
+Rule Vincennes 1955 only - May 1 0:00 1:00 D
+Rule Vincennes 1956 1963 - Apr lastSun 2:00 1:00 D
+Rule Vincennes 1960 only - Oct lastSun 2:00 0 S
+Rule Vincennes 1961 only - Sep lastSun 2:00 0 S
+Rule Vincennes 1962 1963 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Indiana/Vincennes -5:50:07 - LMT 1883 Nov 18 12:09:53
+ -6:00 US C%sT 1946
+ -6:00 Vincennes C%sT 1964 Apr 26 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+ -5:00 - EST 2006 Apr 2 2:00
+ -6:00 US C%sT 2007 Nov 4 2:00
+ -5:00 US E%sT
+#
+# Perry County, Indiana, switched from eastern to central time in April 2006.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Perry 1946 only - Apr lastSun 2:00 1:00 D
+Rule Perry 1946 only - Sep lastSun 2:00 0 S
+Rule Perry 1953 1954 - Apr lastSun 2:00 1:00 D
+Rule Perry 1953 1959 - Sep lastSun 2:00 0 S
+Rule Perry 1955 only - May 1 0:00 1:00 D
+Rule Perry 1956 1963 - Apr lastSun 2:00 1:00 D
+Rule Perry 1960 only - Oct lastSun 2:00 0 S
+Rule Perry 1961 only - Sep lastSun 2:00 0 S
+Rule Perry 1962 1963 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Indiana/Tell_City -5:47:03 - LMT 1883 Nov 18 12:12:57
+ -6:00 US C%sT 1946
+ -6:00 Perry C%sT 1964 Apr 26 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+ -5:00 - EST 2006 Apr 2 2:00
+ -6:00 US C%sT
+#
+# Pike County, Indiana moved from central to eastern time in 1977,
+# then switched back in 2006, then switched back again in 2007.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Pike 1955 only - May 1 0:00 1:00 D
+Rule Pike 1955 1960 - Sep lastSun 2:00 0 S
+Rule Pike 1956 1964 - Apr lastSun 2:00 1:00 D
+Rule Pike 1961 1964 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Indiana/Petersburg -5:49:07 - LMT 1883 Nov 18 12:10:53
+ -6:00 US C%sT 1955
+ -6:00 Pike C%sT 1965 Apr 25 2:00
+ -5:00 - EST 1966 Oct 30 2:00
+ -6:00 US C%sT 1977 Oct 30 2:00
+ -5:00 - EST 2006 Apr 2 2:00
+ -6:00 US C%sT 2007 Nov 4 2:00
+ -5:00 US E%sT
+#
+# Starke County, Indiana moved from central to eastern time in 1991,
+# then switched back in 2006.
+# From Arthur David Olson (1991-10-28):
+# An article on page A3 of the Sunday, 1991-10-27 Washington Post
+# notes that Starke County switched from Central time to Eastern time as of
+# 1991-10-27.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Starke 1947 1961 - Apr lastSun 2:00 1:00 D
+Rule Starke 1947 1954 - Sep lastSun 2:00 0 S
+Rule Starke 1955 1956 - Oct lastSun 2:00 0 S
+Rule Starke 1957 1958 - Sep lastSun 2:00 0 S
+Rule Starke 1959 1961 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Indiana/Knox -5:46:30 - LMT 1883 Nov 18 12:13:30
+ -6:00 US C%sT 1947
+ -6:00 Starke C%sT 1962 Apr 29 2:00
+ -5:00 - EST 1963 Oct 27 2:00
+ -6:00 US C%sT 1991 Oct 27 2:00
+ -5:00 - EST 2006 Apr 2 2:00
+ -6:00 US C%sT
+#
+# Pulaski County, Indiana, switched from eastern to central time in
+# April 2006 and then switched back in March 2007.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Pulaski 1946 1960 - Apr lastSun 2:00 1:00 D
+Rule Pulaski 1946 1954 - Sep lastSun 2:00 0 S
+Rule Pulaski 1955 1956 - Oct lastSun 2:00 0 S
+Rule Pulaski 1957 1960 - Sep lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Indiana/Winamac -5:46:25 - LMT 1883 Nov 18 12:13:35
+ -6:00 US C%sT 1946
+ -6:00 Pulaski C%sT 1961 Apr 30 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+ -5:00 - EST 2006 Apr 2 2:00
+ -6:00 US C%sT 2007 Mar 11 2:00
+ -5:00 US E%sT
+#
+# Switzerland County, Indiana, did not observe DST from 1973 through 2005.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Indiana/Vevay -5:40:16 - LMT 1883 Nov 18 12:19:44
+ -6:00 US C%sT 1954 Apr 25 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1973
+ -5:00 - EST 2006
+ -5:00 US E%sT
+
+# Part of Kentucky left its clocks alone in 1974.
+# This also includes Clark, Floyd, and Harrison counties in Indiana.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Louisville 1921 only - May 1 2:00 1:00 D
+Rule Louisville 1921 only - Sep 1 2:00 0 S
+Rule Louisville 1941 1961 - Apr lastSun 2:00 1:00 D
+Rule Louisville 1941 only - Sep lastSun 2:00 0 S
+Rule Louisville 1946 only - Jun 2 2:00 0 S
+Rule Louisville 1950 1955 - Sep lastSun 2:00 0 S
+Rule Louisville 1956 1960 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Kentucky/Louisville -5:43:02 - LMT 1883 Nov 18 12:16:58
+ -6:00 US C%sT 1921
+ -6:00 Louisville C%sT 1942
+ -6:00 US C%sT 1946
+ -6:00 Louisville C%sT 1961 Jul 23 2:00
+ -5:00 - EST 1968
+ -5:00 US E%sT 1974 Jan 6 2:00
+ -6:00 1:00 CDT 1974 Oct 27 2:00
+ -5:00 US E%sT
+#
+# Wayne County, Kentucky
+#
+# From
+# <a href="http://www.lake-cumberland.com/life/archive/news990129time.shtml">
+# Lake Cumberland LIFE
+# </a> (1999-01-29) via WKYM-101.7:
+# Clinton County has joined Wayne County in asking the DoT to change from
+# the Central to the Eastern time zone.... The Wayne County government made
+# the same request in December. And while Russell County officials have not
+# taken action, the majority of respondents to a poll conducted there in
+# August indicated they would like to change to "fast time" also.
+# The three Lake Cumberland counties are the farthest east of any U.S.
+# location in the Central time zone.
+#
+# From Rich Wales (2000-08-29):
+# After prolonged debate, and despite continuing deep differences of opinion,
+# Wayne County (central Kentucky) is switching from Central (-0600) to Eastern
+# (-0500) time. They won't "fall back" this year. See Sara Shipley,
+# The difference an hour makes, Nando Times (2000-08-29 15:33 -0400).
+#
+# From Paul Eggert (2001-07-16):
+# The final rule was published in the
+# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22">
+# Federal Register 65, 160 (2000-08-17), page 50154-50158.
+# </a>
+#
+Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36
+ -6:00 US C%sT 1946
+ -6:00 - CST 1968
+ -6:00 US C%sT 2000 Oct 29 2:00
+ -5:00 US E%sT
+
+
+# From Rives McDow (2000-08-30):
+# Here ... are all the changes in the US since 1985.
+# Kearny County, KS (put all of county on central;
+# previously split between MST and CST) ... 1990-10
+# Starke County, IN (from CST to EST) ... 1991-10
+# Oliver County, ND (from MST to CST) ... 1992-10
+# West Wendover, NV (from PST TO MST) ... 1999-10
+# Wayne County, KY (from CST to EST) ... 2000-10
+#
+# From Paul Eggert (2001-07-17):
+# We don't know where the line used to be within Kearny County, KS,
+# so omit that change for now.
+# See America/Indiana/Knox for the Starke County, IN change.
+# See America/North_Dakota/Center for the Oliver County, ND change.
+# West Wendover, NV officially switched from Pacific to mountain time on
+# 1999-10-31. See the
+# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15">
+# Federal Register 64, 203 (1999-10-21), page 56705-56707.
+# </a>
+# However, the Federal Register says that West Wendover already operated
+# on mountain time, and the rule merely made this official;
+# hence a separate tz entry is not needed.
+
+# Michigan
+#
+# From Bob Devine (1988-01-28):
+# Michigan didn't observe DST from 1968 to 1973.
+#
+# From Paul Eggert (1999-03-31):
+# Shanks writes that Michigan started using standard time on 1885-09-18,
+# but Howse writes (pp 124-125, referring to Popular Astronomy, 1901-01)
+# that Detroit kept
+#
+# local time until 1900 when the City Council decreed that clocks should
+# be put back twenty-eight minutes to Central Standard Time. Half the
+# city obeyed, half refused. After considerable debate, the decision
+# was rescinded and the city reverted to Sun time. A derisive offer to
+# erect a sundial in front of the city hall was referred to the
+# Committee on Sewers. Then, in 1905, Central time was adopted
+# by city vote.
+#
+# This story is too entertaining to be false, so go with Howse over Shanks.
+#
+# From Paul Eggert (2001-03-06):
+# Garland (1927) writes ``Cleveland and Detroit advanced their clocks
+# one hour in 1914.'' This change is not in Shanks. We have no more
+# info, so omit this for now.
+#
+# Most of Michigan observed DST from 1973 on, but was a bit late in 1975.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Detroit 1948 only - Apr lastSun 2:00 1:00 D
+Rule Detroit 1948 only - Sep lastSun 2:00 0 S
+Rule Detroit 1967 only - Jun 14 2:00 1:00 D
+Rule Detroit 1967 only - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Detroit -5:32:11 - LMT 1905
+ -6:00 - CST 1915 May 15 2:00
+ -5:00 - EST 1942
+ -5:00 US E%sT 1946
+ -5:00 Detroit E%sT 1973
+ -5:00 US E%sT 1975
+ -5:00 - EST 1975 Apr 27 2:00
+ -5:00 US E%sT
+#
+# Dickinson, Gogebic, Iron, and Menominee Counties, Michigan,
+# switched from EST to CST/CDT in 1973.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Menominee 1946 only - Apr lastSun 2:00 1:00 D
+Rule Menominee 1946 only - Sep lastSun 2:00 0 S
+Rule Menominee 1966 only - Apr lastSun 2:00 1:00 D
+Rule Menominee 1966 only - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00
+ -6:00 US C%sT 1946
+ -6:00 Menominee C%sT 1969 Apr 27 2:00
+ -5:00 - EST 1973 Apr 29 2:00
+ -6:00 US C%sT
+
+# Navassa
+# administered by the US Fish and Wildlife Service
+# claimed by US under the provisions of the 1856 Guano Islands Act
+# also claimed by Haiti
+# occupied 1857/1900 by the Navassa Phosphate Co
+# US lighthouse 1917/1996-09
+# currently uninhabited
+# see Mark Fineman, ``An Isle Rich in Guano and Discord'',
+# _Los Angeles Times_ (1998-11-10), A1, A10; it cites
+# Jimmy Skaggs, _The Great Guano Rush_ (1994).
+
+################################################################################
+
+
+# From Paul Eggert (2006-03-22):
+# A good source for time zone historical data outside the U.S. is
+# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+# San Diego: ACS Publications, Inc. (2003).
+#
+# Gwillim Law writes that a good source
+# for recent time zone data is the International Air Transport
+# Association's Standard Schedules Information Manual (IATA SSIM),
+# published semiannually. Law sent in several helpful summaries
+# of the IATA's data after 1990.
+#
+# Except where otherwise noted, Shanks & Pottenger is the source for
+# entries through 1990, and IATA SSIM is the source for entries afterwards.
+#
+# Other sources occasionally used include:
+#
+# Edward W. Whitman, World Time Differences,
+# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated),
+# which I found in the UCLA library.
+#
+# <a href="http://www.pettswoodvillage.co.uk/Daylight_Savings_William_Willett.pdf">
+# William Willett, The Waste of Daylight, 19th edition
+# </a> (1914-03)
+#
+# See the `europe' file for Greenland.
+
+# Canada
+
+# From Alain LaBont<e'> (1994-11-14):
+# I post here the time zone abbreviations standardized in Canada
+# for both English and French in the CAN/CSA-Z234.4-89 standard....
+#
+# UTC Standard time Daylight savings time
+# offset French English French English
+# -2:30 - - HAT NDT
+# -3 - - HAA ADT
+# -3:30 HNT NST - -
+# -4 HNA AST HAE EDT
+# -5 HNE EST HAC CDT
+# -6 HNC CST HAR MDT
+# -7 HNR MST HAP PDT
+# -8 HNP PST HAY YDT
+# -9 HNY YST - -
+#
+# HN: Heure Normale ST: Standard Time
+# HA: Heure Avanc<e'>e DT: Daylight saving Time
+#
+# A: de l'Atlantique Atlantic
+# C: du Centre Central
+# E: de l'Est Eastern
+# M: Mountain
+# N: Newfoundland
+# P: du Pacifique Pacific
+# R: des Rocheuses
+# T: de Terre-Neuve
+# Y: du Yukon Yukon
+#
+# From Paul Eggert (1994-11-22):
+# Alas, this sort of thing must be handled by localization software.
+
+# Unless otherwise specified, the data for Canada are all from Shanks
+# & Pottenger.
+
+# From Chris Walton (2006-04-01, 2006-04-25, 2006-06-26, 2007-01-31,
+# 2007-03-01):
+# The British Columbia government announced yesterday that it will
+# adjust daylight savings next year to align with changes in the
+# U.S. and the rest of Canada....
+# http://www2.news.gov.bc.ca/news_releases_2005-2009/2006AG0014-000330.htm
+# ...
+# Nova Scotia
+# Daylight saving time will be extended by four weeks starting in 2007....
+# http://www.gov.ns.ca/just/regulations/rg2/2006/ma1206.pdf
+#
+# [For New Brunswick] the new legislation dictates that the time change is to
+# be done at 02:00 instead of 00:01.
+# http://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
+# ...
+# Manitoba has traditionally changed the clock every fall at 03:00.
+# As of 2006, the transition is to take place one hour earlier at 02:00.
+# http://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
+# ...
+# [Alberta, Ontario, Quebec] will follow US rules.
+# http://www.qp.gov.ab.ca/documents/spring/CH03_06.CFM
+# http://www.e-laws.gov.on.ca/DBLaws/Source/Regs/English/2006/R06111_e.htm
+# http://www2.publicationsduquebec.gouv.qc.ca/dynamicSearch/telecharge.php?type=5&file=2006C39A.PDF
+# ...
+# P.E.I. will follow US rules....
+# http://www.assembly.pe.ca/bills/pdf_chapter/62/3/chapter-41.pdf
+# ...
+# Province of Newfoundland and Labrador....
+# http://www.hoa.gov.nl.ca/hoa/bills/Bill0634.htm
+# ...
+# Yukon
+# http://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
+# ...
+# N.W.T. will follow US rules. Whoever maintains the government web site
+# does not seem to believe in bookmarks. To see the news release, click the
+# following link and search for "Daylight Savings Time Change". Press the
+# "Daylight Savings Time Change" link; it will fire off a popup using
+# JavaScript.
+# http://www.exec.gov.nt.ca/currentnews/currentPR.asp?mode=archive
+# ...
+# Nunavut
+# An amendment to the Interpretation Act was registered on February 19/2007....
+# http://action.attavik.ca/home/justice-gn/attach/2007/gaz02part2.pdf
+
+# From Paul Eggert (2006-04-25):
+# H. David Matthews and Mary Vincent's map
+# <a href="http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp">
+# "It's about TIME", _Canadian Geographic_ (September-October 1998)
+# </a> contains detailed boundaries for regions observing nonstandard
+# time and daylight saving time arrangements in Canada circa 1998.
+#
+# INMS, the Institute for National Measurement Standards in Ottawa, has <a
+# href="http://inms-ienm.nrc-cnrc.gc.ca/en/time_services/daylight_saving_e.php">
+# information about standard and daylight saving time zones in Canada.
+# </a> (updated periodically).
+# Its unofficial information is often taken from Matthews and Vincent.
+
+# From Paul Eggert (2006-06-27):
+# For now, assume all of DST-observing Canada will fall into line with the
+# new US DST rules,
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Canada 1918 only - Apr 14 2:00 1:00 D
+Rule Canada 1918 only - Oct 31 2:00 0 S
+Rule Canada 1942 only - Feb 9 2:00 1:00 W # War
+Rule Canada 1945 only - Aug 14 23:00u 1:00 P # Peace
+Rule Canada 1945 only - Sep 30 2:00 0 S
+Rule Canada 1974 1986 - Apr lastSun 2:00 1:00 D
+Rule Canada 1974 2006 - Oct lastSun 2:00 0 S
+Rule Canada 1987 2006 - Apr Sun>=1 2:00 1:00 D
+Rule Canada 2007 max - Mar Sun>=8 2:00 1:00 D
+Rule Canada 2007 max - Nov Sun>=1 2:00 0 S
+
+
+# Newfoundland and Labrador
+
+# From Paul Eggert (2000-10-02):
+# Matthews and Vincent (1998) write that Labrador should use NST/NDT,
+# but the only part of Labrador that follows the rules is the
+# southeast corner, including Port Hope Simpson and Mary's Harbour,
+# but excluding, say, Black Tickle.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule StJohns 1917 only - Apr 8 2:00 1:00 D
+Rule StJohns 1917 only - Sep 17 2:00 0 S
+# Whitman gives 1919 Apr 5 and 1920 Apr 5; go with Shanks & Pottenger.
+Rule StJohns 1919 only - May 5 23:00 1:00 D
+Rule StJohns 1919 only - Aug 12 23:00 0 S
+# For 1931-1935 Whitman gives Apr same date; go with Shanks & Pottenger.
+Rule StJohns 1920 1935 - May Sun>=1 23:00 1:00 D
+Rule StJohns 1920 1935 - Oct lastSun 23:00 0 S
+# For 1936-1941 Whitman gives May Sun>=8 and Oct Sun>=1; go with Shanks &
+# Pottenger.
+Rule StJohns 1936 1941 - May Mon>=9 0:00 1:00 D
+Rule StJohns 1936 1941 - Oct Mon>=2 0:00 0 S
+# Whitman gives the following transitions:
+# 1942 03-01/12-31, 1943 05-30/09-05, 1944 07-10/09-02, 1945 01-01/10-07
+# but go with Shanks & Pottenger and assume they used Canadian rules.
+# For 1946-9 Whitman gives May 5,4,9,1 - Oct 1,5,3,2, and for 1950 he gives
+# Apr 30 - Sep 24; go with Shanks & Pottenger.
+Rule StJohns 1946 1950 - May Sun>=8 2:00 1:00 D
+Rule StJohns 1946 1950 - Oct Sun>=2 2:00 0 S
+Rule StJohns 1951 1986 - Apr lastSun 2:00 1:00 D
+Rule StJohns 1951 1959 - Sep lastSun 2:00 0 S
+Rule StJohns 1960 1986 - Oct lastSun 2:00 0 S
+# From Paul Eggert (2000-10-02):
+# INMS (2000-09-12) says that, since 1988 at least, Newfoundland switches
+# at 00:01 local time. For now, assume it started in 1987.
+Rule StJohns 1987 only - Apr Sun>=1 0:01 1:00 D
+Rule StJohns 1987 2006 - Oct lastSun 0:01 0 S
+Rule StJohns 1988 only - Apr Sun>=1 0:01 2:00 DD
+Rule StJohns 1989 2006 - Apr Sun>=1 0:01 1:00 D
+Rule StJohns 2007 max - Mar Sun>=8 0:01 1:00 D
+Rule StJohns 2007 max - Nov Sun>=1 0:01 0 S
+#
+# St John's has an apostrophe, but Posix file names can't have apostrophes.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/St_Johns -3:30:52 - LMT 1884
+ -3:30:52 StJohns N%sT 1918
+ -3:30:52 Canada N%sT 1919
+ -3:30:52 StJohns N%sT 1935 Mar 30
+ -3:30 StJohns N%sT 1942 May 11
+ -3:30 Canada N%sT 1946
+ -3:30 StJohns N%sT
+
+# most of east Labrador
+
+# The name `Happy Valley-Goose Bay' is too long; use `Goose Bay'.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Goose_Bay -4:01:40 - LMT 1884 # Happy Valley-Goose Bay
+ -3:30:52 - NST 1918
+ -3:30:52 Canada N%sT 1919
+ -3:30:52 - NST 1935 Mar 30
+ -3:30 - NST 1936
+ -3:30 StJohns N%sT 1942 May 11
+ -3:30 Canada N%sT 1946
+ -3:30 StJohns N%sT 1966 Mar 15 2:00
+ -4:00 StJohns A%sT
+
+
+# west Labrador, Nova Scotia, Prince Edward I
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger write that since 1970 most of this region has been like
+# Halifax. Many locales did not observe peacetime DST until 1972;
+# Glace Bay, NS is the largest that we know of.
+# Shanks & Pottenger also write that Liverpool, NS was the only town
+# in Canada to observe DST in 1971 but not 1970; for now we'll assume
+# this is a typo.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Halifax 1916 only - Apr 1 0:00 1:00 D
+Rule Halifax 1916 only - Oct 1 0:00 0 S
+Rule Halifax 1920 only - May 9 0:00 1:00 D
+Rule Halifax 1920 only - Aug 29 0:00 0 S
+Rule Halifax 1921 only - May 6 0:00 1:00 D
+Rule Halifax 1921 1922 - Sep 5 0:00 0 S
+Rule Halifax 1922 only - Apr 30 0:00 1:00 D
+Rule Halifax 1923 1925 - May Sun>=1 0:00 1:00 D
+Rule Halifax 1923 only - Sep 4 0:00 0 S
+Rule Halifax 1924 only - Sep 15 0:00 0 S
+Rule Halifax 1925 only - Sep 28 0:00 0 S
+Rule Halifax 1926 only - May 16 0:00 1:00 D
+Rule Halifax 1926 only - Sep 13 0:00 0 S
+Rule Halifax 1927 only - May 1 0:00 1:00 D
+Rule Halifax 1927 only - Sep 26 0:00 0 S
+Rule Halifax 1928 1931 - May Sun>=8 0:00 1:00 D
+Rule Halifax 1928 only - Sep 9 0:00 0 S
+Rule Halifax 1929 only - Sep 3 0:00 0 S
+Rule Halifax 1930 only - Sep 15 0:00 0 S
+Rule Halifax 1931 1932 - Sep Mon>=24 0:00 0 S
+Rule Halifax 1932 only - May 1 0:00 1:00 D
+Rule Halifax 1933 only - Apr 30 0:00 1:00 D
+Rule Halifax 1933 only - Oct 2 0:00 0 S
+Rule Halifax 1934 only - May 20 0:00 1:00 D
+Rule Halifax 1934 only - Sep 16 0:00 0 S
+Rule Halifax 1935 only - Jun 2 0:00 1:00 D
+Rule Halifax 1935 only - Sep 30 0:00 0 S
+Rule Halifax 1936 only - Jun 1 0:00 1:00 D
+Rule Halifax 1936 only - Sep 14 0:00 0 S
+Rule Halifax 1937 1938 - May Sun>=1 0:00 1:00 D
+Rule Halifax 1937 1941 - Sep Mon>=24 0:00 0 S
+Rule Halifax 1939 only - May 28 0:00 1:00 D
+Rule Halifax 1940 1941 - May Sun>=1 0:00 1:00 D
+Rule Halifax 1946 1949 - Apr lastSun 2:00 1:00 D
+Rule Halifax 1946 1949 - Sep lastSun 2:00 0 S
+Rule Halifax 1951 1954 - Apr lastSun 2:00 1:00 D
+Rule Halifax 1951 1954 - Sep lastSun 2:00 0 S
+Rule Halifax 1956 1959 - Apr lastSun 2:00 1:00 D
+Rule Halifax 1956 1959 - Sep lastSun 2:00 0 S
+Rule Halifax 1962 1973 - Apr lastSun 2:00 1:00 D
+Rule Halifax 1962 1973 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Halifax -4:14:24 - LMT 1902 Jun 15
+ -4:00 Halifax A%sT 1918
+ -4:00 Canada A%sT 1919
+ -4:00 Halifax A%sT 1942 Feb 9 2:00s
+ -4:00 Canada A%sT 1946
+ -4:00 Halifax A%sT 1974
+ -4:00 Canada A%sT
+Zone America/Glace_Bay -3:59:48 - LMT 1902 Jun 15
+ -4:00 Canada A%sT 1953
+ -4:00 Halifax A%sT 1954
+ -4:00 - AST 1972
+ -4:00 Halifax A%sT 1974
+ -4:00 Canada A%sT
+
+# New Brunswick
+
+# From Paul Eggert (2007-01-31):
+# The Time Definition Act <http://www.gnb.ca/0062/PDF-acts/t-06.pdf>
+# says they changed at 00:01 through 2006, and
+# <http://www.canlii.org/nb/laws/sta/t-6/20030127/whole.html> makes it
+# clear that this was the case since at least 1993.
+# For now, assume it started in 1993.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Moncton 1933 1935 - Jun Sun>=8 1:00 1:00 D
+Rule Moncton 1933 1935 - Sep Sun>=8 1:00 0 S
+Rule Moncton 1936 1938 - Jun Sun>=1 1:00 1:00 D
+Rule Moncton 1936 1938 - Sep Sun>=1 1:00 0 S
+Rule Moncton 1939 only - May 27 1:00 1:00 D
+Rule Moncton 1939 1941 - Sep Sat>=21 1:00 0 S
+Rule Moncton 1940 only - May 19 1:00 1:00 D
+Rule Moncton 1941 only - May 4 1:00 1:00 D
+Rule Moncton 1946 1972 - Apr lastSun 2:00 1:00 D
+Rule Moncton 1946 1956 - Sep lastSun 2:00 0 S
+Rule Moncton 1957 1972 - Oct lastSun 2:00 0 S
+Rule Moncton 1993 2006 - Apr Sun>=1 0:01 1:00 D
+Rule Moncton 1993 2006 - Oct lastSun 0:01 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Moncton -4:19:08 - LMT 1883 Dec 9
+ -5:00 - EST 1902 Jun 15
+ -4:00 Canada A%sT 1933
+ -4:00 Moncton A%sT 1942
+ -4:00 Canada A%sT 1946
+ -4:00 Moncton A%sT 1973
+ -4:00 Canada A%sT 1993
+ -4:00 Moncton A%sT 2007
+ -4:00 Canada A%sT
+
+# Quebec
+
+# From Paul Eggert (2006-07-09):
+# Shanks & Pottenger write that since 1970 most of Quebec has been
+# like Montreal.
+
+# From Paul Eggert (2006-06-27):
+# Matthews and Vincent (1998) also write that Quebec east of the -63
+# meridian is supposed to observe AST, but residents as far east as
+# Natashquan use EST/EDT, and residents east of Natashquan use AST.
+# In "Official time in Quebec" the Quebec department of justice writes in
+# http://www.justice.gouv.qc.ca/english/publications/generale/temps-regl-1-a.htm
+# that "The residents of the Municipality of the
+# Cote-Nord-du-Golfe-Saint-Laurent and the municipalities of Saint-Augustin,
+# Bonne-Esperance and Blanc-Sablon apply the Official Time Act as it is
+# written and use Atlantic standard time all year round. The same applies to
+# the residents of the Native facilities along the lower North Shore."
+# <http://www.assnat.qc.ca/eng/37legislature2/Projets-loi/Publics/06-a002.htm>
+# says this common practice was codified into law as of 2007.
+# For lack of better info, guess this practice began around 1970, contra to
+# Shanks & Pottenger who have this region observing AST/ADT.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Mont 1917 only - Mar 25 2:00 1:00 D
+Rule Mont 1917 only - Apr 24 0:00 0 S
+Rule Mont 1919 only - Mar 31 2:30 1:00 D
+Rule Mont 1919 only - Oct 25 2:30 0 S
+Rule Mont 1920 only - May 2 2:30 1:00 D
+Rule Mont 1920 1922 - Oct Sun>=1 2:30 0 S
+Rule Mont 1921 only - May 1 2:00 1:00 D
+Rule Mont 1922 only - Apr 30 2:00 1:00 D
+Rule Mont 1924 only - May 17 2:00 1:00 D
+Rule Mont 1924 1926 - Sep lastSun 2:30 0 S
+Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D
+# The 1927-to-1937 rules can be expressed more simply as
+# Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D
+# Rule Mont 1927 1937 - Sep lastSat 24:00 0 S
+# The rules below avoid use of 24:00
+# (which pre-1998 versions of zic cannot handle).
+Rule Mont 1927 only - May 1 0:00 1:00 D
+Rule Mont 1927 1932 - Sep lastSun 0:00 0 S
+Rule Mont 1928 1931 - Apr lastSun 0:00 1:00 D
+Rule Mont 1932 only - May 1 0:00 1:00 D
+Rule Mont 1933 1940 - Apr lastSun 0:00 1:00 D
+Rule Mont 1933 only - Oct 1 0:00 0 S
+Rule Mont 1934 1939 - Sep lastSun 0:00 0 S
+Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D
+Rule Mont 1945 1948 - Sep lastSun 2:00 0 S
+Rule Mont 1949 1950 - Oct lastSun 2:00 0 S
+Rule Mont 1951 1956 - Sep lastSun 2:00 0 S
+Rule Mont 1957 1973 - Oct lastSun 2:00 0 S
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Blanc-Sablon -3:48:28 - LMT 1884
+ -4:00 Canada A%sT 1970
+ -4:00 - AST
+Zone America/Montreal -4:54:16 - LMT 1884
+ -5:00 Mont E%sT 1918
+ -5:00 Canada E%sT 1919
+ -5:00 Mont E%sT 1942 Feb 9 2:00s
+ -5:00 Canada E%sT 1946
+ -5:00 Mont E%sT 1974
+ -5:00 Canada E%sT
+
+
+# Ontario
+
+# From Paul Eggert (2006-07-09):
+# Shanks & Pottenger write that since 1970 most of Ontario has been like
+# Toronto.
+# Thunder Bay skipped DST in 1973.
+# Many smaller locales did not observe peacetime DST until 1974;
+# Nipigon (EST) and Rainy River (CST) are the largest that we know of.
+# Far west Ontario is like Winnipeg; far east Quebec is like Halifax.
+
+# From Mark Brader (2003-07-26):
+# [According to the Toronto Star] Orillia, Ontario, adopted DST
+# effective Saturday, 1912-06-22, 22:00; the article mentions that
+# Port Arthur (now part of Thunder Bay, Ontario) as well as Moose Jaw
+# have already done so. In Orillia DST was to run until Saturday,
+# 1912-08-31 (no time mentioned), but it was met with considerable
+# hostility from certain segments of the public, and was revoked after
+# only two weeks -- I copied it as Saturday, 1912-07-07, 22:00, but
+# presumably that should be -07-06. (1912-06-19, -07-12; also letters
+# earlier in June).
+#
+# Kenora, Ontario, was to abandon DST on 1914-06-01 (-05-21).
+
+# From Paul Eggert (1997-10-17):
+# Mark Brader writes that an article in the 1997-10-14 Toronto Star
+# says that Atikokan, Ontario currently does not observe DST,
+# but will vote on 11-10 whether to use EST/EDT.
+# He also writes that the
+# <a href="http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html">
+# Ontario Time Act (1990, Chapter T.9)
+# </a>
+# says that Ontario east of 90W uses EST/EDT, and west of 90W uses CST/CDT.
+# Officially Atikokan is therefore on CST/CDT, and most likely this report
+# concerns a non-official time observed as a matter of local practice.
+#
+# From Paul Eggert (2000-10-02):
+# Matthews and Vincent (1998) write that Atikokan, Pickle Lake, and
+# New Osnaburgh observe CST all year, that Big Trout Lake observes
+# CST/CDT, and that Upsala and Shebandowan observe EST/EDT, all in
+# violation of the official Ontario rules.
+#
+# From Paul Eggert (2006-07-09):
+# Chris Walton (2006-07-06) mentioned an article by Stephanie MacLellan in the
+# 2005-07-21 Chronicle-Journal, which said:
+#
+# The clocks in Atikokan stay set on standard time year-round.
+# This means they spend about half the time on central time and
+# the other half on eastern time.
+#
+# For the most part, the system works, Mayor Dennis Brown said.
+#
+# "The majority of businesses in Atikokan deal more with Eastern
+# Canada, but there are some that deal with Western Canada," he
+# said. "I don't see any changes happening here."
+#
+# Walton also writes "Supposedly Pickle Lake and Mishkeegogamang
+# [New Osnaburgh] follow the same practice."
+
+# From Garry McKinnon (2006-07-14) via Chris Walton:
+# I chatted with a member of my board who has an outstanding memory
+# and a long history in Atikokan (and in the telecom industry) and he
+# can say for certain that Atikokan has been practicing the current
+# time keeping since 1952, at least.
+
+# From Paul Eggert (2006-07-17):
+# Shanks & Pottenger say that Atikokan has agreed with Rainy River
+# ever since standard time was introduced, but the information from
+# McKinnon sounds more authoritative. For now, assume that Atikokan
+# switched to EST immediately after WWII era daylight saving time
+# ended. This matches the old (less-populous) America/Coral_Harbour
+# entry since our cutoff date of 1970, so we can move
+# America/Coral_Harbour to the 'backward' file.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Toronto 1919 only - Mar 30 23:30 1:00 D
+Rule Toronto 1919 only - Oct 26 0:00 0 S
+Rule Toronto 1920 only - May 2 2:00 1:00 D
+Rule Toronto 1920 only - Sep 26 0:00 0 S
+Rule Toronto 1921 only - May 15 2:00 1:00 D
+Rule Toronto 1921 only - Sep 15 2:00 0 S
+Rule Toronto 1922 1923 - May Sun>=8 2:00 1:00 D
+# Shanks & Pottenger say 1923-09-19; assume it's a typo and that "-16"
+# was meant.
+Rule Toronto 1922 1926 - Sep Sun>=15 2:00 0 S
+Rule Toronto 1924 1927 - May Sun>=1 2:00 1:00 D
+# The 1927-to-1939 rules can be expressed more simply as
+# Rule Toronto 1927 1937 - Sep Sun>=25 2:00 0 S
+# Rule Toronto 1928 1937 - Apr Sun>=25 2:00 1:00 D
+# Rule Toronto 1938 1940 - Apr lastSun 2:00 1:00 D
+# Rule Toronto 1938 1939 - Sep lastSun 2:00 0 S
+# The rules below avoid use of Sun>=25
+# (which pre-2004 versions of zic cannot handle).
+Rule Toronto 1927 1932 - Sep lastSun 2:00 0 S
+Rule Toronto 1928 1931 - Apr lastSun 2:00 1:00 D
+Rule Toronto 1932 only - May 1 2:00 1:00 D
+Rule Toronto 1933 1940 - Apr lastSun 2:00 1:00 D
+Rule Toronto 1933 only - Oct 1 2:00 0 S
+Rule Toronto 1934 1939 - Sep lastSun 2:00 0 S
+Rule Toronto 1945 1946 - Sep lastSun 2:00 0 S
+Rule Toronto 1946 only - Apr lastSun 2:00 1:00 D
+Rule Toronto 1947 1949 - Apr lastSun 0:00 1:00 D
+Rule Toronto 1947 1948 - Sep lastSun 0:00 0 S
+Rule Toronto 1949 only - Nov lastSun 0:00 0 S
+Rule Toronto 1950 1973 - Apr lastSun 2:00 1:00 D
+Rule Toronto 1950 only - Nov lastSun 2:00 0 S
+Rule Toronto 1951 1956 - Sep lastSun 2:00 0 S
+# Shanks & Pottenger say Toronto ended DST a week early in 1971,
+# namely on 1971-10-24, but Mark Brader wrote (2003-05-31) that this
+# is wrong, and that he had confirmed it by checking the 1971-10-30
+# Toronto Star, which said that DST was ending 1971-10-31 as usual.
+Rule Toronto 1957 1973 - Oct lastSun 2:00 0 S
+
+# From Paul Eggert (2003-07-27):
+# Willett (1914-03) writes (p. 17) "In the Cities of Fort William, and
+# Port Arthur, Ontario, the principle of the Bill has been in
+# operation for the past three years, and in the City of Moose Jaw,
+# Saskatchewan, for one year."
+
+# From David Bryan via Tory Tronrud, Director/Curator,
+# Thunder Bay Museum (2003-11-12):
+# There is some suggestion, however, that, by-law or not, daylight
+# savings time was being practiced in Fort William and Port Arthur
+# before 1909.... [I]n 1910, the line between the Eastern and Central
+# Time Zones was permanently moved about two hundred miles west to
+# include the Thunder Bay area.... When Canada adopted daylight
+# savings time in 1916, Fort William and Port Arthur, having done so
+# already, did not change their clocks.... During the Second World
+# War,... [t]he cities agreed to implement DST during the summer
+# months for the remainder of the war years.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Toronto -5:17:32 - LMT 1895
+ -5:00 Canada E%sT 1919
+ -5:00 Toronto E%sT 1942 Feb 9 2:00s
+ -5:00 Canada E%sT 1946
+ -5:00 Toronto E%sT 1974
+ -5:00 Canada E%sT
+Zone America/Thunder_Bay -5:57:00 - LMT 1895
+ -6:00 - CST 1910
+ -5:00 - EST 1942
+ -5:00 Canada E%sT 1970
+ -5:00 Mont E%sT 1973
+ -5:00 - EST 1974
+ -5:00 Canada E%sT
+Zone America/Nipigon -5:53:04 - LMT 1895
+ -5:00 Canada E%sT 1940 Sep 29
+ -5:00 1:00 EDT 1942 Feb 9 2:00s
+ -5:00 Canada E%sT
+Zone America/Rainy_River -6:18:16 - LMT 1895
+ -6:00 Canada C%sT 1940 Sep 29
+ -6:00 1:00 CDT 1942 Feb 9 2:00s
+ -6:00 Canada C%sT
+Zone America/Atikokan -6:06:28 - LMT 1895
+ -6:00 Canada C%sT 1940 Sep 29
+ -6:00 1:00 CDT 1942 Feb 9 2:00s
+ -6:00 Canada C%sT 1945 Sep 30 2:00
+ -5:00 - EST
+
+
+# Manitoba
+
+# From Rob Douglas (2006-04-06):
+# the old Manitoba Time Act - as amended by Bill 2, assented to
+# March 27, 1987 ... said ...
+# "between two o'clock Central Standard Time in the morning of
+# the first Sunday of April of each year and two o'clock Central
+# Standard Time in the morning of the last Sunday of October next
+# following, one hour in advance of Central Standard Time."...
+# I believe that the English legislation [of the old time act] had =
+# been assented to (March 22, 1967)....
+# Also, as far as I can tell, there was no order-in-council varying
+# the time of Daylight Saving Time for 2005 and so the provisions of
+# the 1987 version would apply - the changeover was at 2:00 Central
+# Standard Time (i.e. not until 3:00 Central Daylight Time).
+
+# From Paul Eggert (2006-04-10):
+# Shanks & Pottenger say Manitoba switched at 02:00 (not 02:00s)
+# starting 1966. Since 02:00s is clearly correct for 1967 on, assume
+# it was also 02:00s in 1966.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Winn 1916 only - Apr 23 0:00 1:00 D
+Rule Winn 1916 only - Sep 17 0:00 0 S
+Rule Winn 1918 only - Apr 14 2:00 1:00 D
+Rule Winn 1918 only - Oct 31 2:00 0 S
+Rule Winn 1937 only - May 16 2:00 1:00 D
+Rule Winn 1937 only - Sep 26 2:00 0 S
+Rule Winn 1942 only - Feb 9 2:00 1:00 W # War
+Rule Winn 1945 only - Aug 14 23:00u 1:00 P # Peace
+Rule Winn 1945 only - Sep lastSun 2:00 0 S
+Rule Winn 1946 only - May 12 2:00 1:00 D
+Rule Winn 1946 only - Oct 13 2:00 0 S
+Rule Winn 1947 1949 - Apr lastSun 2:00 1:00 D
+Rule Winn 1947 1949 - Sep lastSun 2:00 0 S
+Rule Winn 1950 only - May 1 2:00 1:00 D
+Rule Winn 1950 only - Sep 30 2:00 0 S
+Rule Winn 1951 1960 - Apr lastSun 2:00 1:00 D
+Rule Winn 1951 1958 - Sep lastSun 2:00 0 S
+Rule Winn 1959 only - Oct lastSun 2:00 0 S
+Rule Winn 1960 only - Sep lastSun 2:00 0 S
+Rule Winn 1963 only - Apr lastSun 2:00 1:00 D
+Rule Winn 1963 only - Sep 22 2:00 0 S
+Rule Winn 1966 1986 - Apr lastSun 2:00s 1:00 D
+Rule Winn 1966 2005 - Oct lastSun 2:00s 0 S
+Rule Winn 1987 2005 - Apr Sun>=1 2:00s 1:00 D
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Winnipeg -6:28:36 - LMT 1887 Jul 16
+ -6:00 Winn C%sT 2006
+ -6:00 Canada C%sT
+
+
+# Saskatchewan
+
+# From Mark Brader (2003-07-26):
+# The first actual adoption of DST in Canada was at the municipal
+# level. As the [Toronto] Star put it (1912-06-07), "While people
+# elsewhere have long been talking of legislation to save daylight,
+# the city of Moose Jaw [Saskatchewan] has acted on its own hook."
+# DST in Moose Jaw began on Saturday, 1912-06-01 (no time mentioned:
+# presumably late evening, as below), and would run until "the end of
+# the summer". The discrepancy between municipal time and railroad
+# time was noted.
+
+# From Paul Eggert (2003-07-27):
+# Willett (1914-03) notes that DST "has been in operation ... in the
+# City of Moose Jaw, Saskatchewan, for one year."
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger say that since 1970 this region has mostly been as Regina.
+# Some western towns (e.g. Swift Current) switched from MST/MDT to CST in 1972.
+# Other western towns (e.g. Lloydminster) are like Edmonton.
+# Matthews and Vincent (1998) write that Denare Beach and Creighton
+# are like Winnipeg, in violation of Saskatchewan law.
+
+# From W. Jones (1992-11-06):
+# The. . .below is based on information I got from our law library, the
+# provincial archives, and the provincial Community Services department.
+# A precise history would require digging through newspaper archives, and
+# since you didn't say what you wanted, I didn't bother.
+#
+# Saskatchewan is split by a time zone meridian (105W) and over the years
+# the boundary became pretty ragged as communities near it reevaluated
+# their affiliations in one direction or the other. In 1965 a provincial
+# referendum favoured legislating common time practices.
+#
+# On 15 April 1966 the Time Act (c. T-14, Revised Statutes of
+# Saskatchewan 1978) was proclaimed, and established that the eastern
+# part of Saskatchewan would use CST year round, that districts in
+# northwest Saskatchewan would by default follow CST but could opt to
+# follow Mountain Time rules (thus 1 hour difference in the winter and
+# zero in the summer), and that districts in southwest Saskatchewan would
+# by default follow MT but could opt to follow CST.
+#
+# It took a few years for the dust to settle (I know one story of a town
+# on one time zone having its school in another, such that a mom had to
+# serve her family lunch in two shifts), but presently it seems that only
+# a few towns on the border with Alberta (e.g. Lloydminster) follow MT
+# rules any more; all other districts appear to have used CST year round
+# since sometime in the 1960s.
+
+# From Chris Walton (2006-06-26):
+# The Saskatchewan time act which was last updated in 1996 is about 30 pages
+# long and rather painful to read.
+# http://www.qp.gov.sk.ca/documents/English/Statutes/Statutes/T14.pdf
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Regina 1918 only - Apr 14 2:00 1:00 D
+Rule Regina 1918 only - Oct 31 2:00 0 S
+Rule Regina 1930 1934 - May Sun>=1 0:00 1:00 D
+Rule Regina 1930 1934 - Oct Sun>=1 0:00 0 S
+Rule Regina 1937 1941 - Apr Sun>=8 0:00 1:00 D
+Rule Regina 1937 only - Oct Sun>=8 0:00 0 S
+Rule Regina 1938 only - Oct Sun>=1 0:00 0 S
+Rule Regina 1939 1941 - Oct Sun>=8 0:00 0 S
+Rule Regina 1942 only - Feb 9 2:00 1:00 W # War
+Rule Regina 1945 only - Aug 14 23:00u 1:00 P # Peace
+Rule Regina 1945 only - Sep lastSun 2:00 0 S
+Rule Regina 1946 only - Apr Sun>=8 2:00 1:00 D
+Rule Regina 1946 only - Oct Sun>=8 2:00 0 S
+Rule Regina 1947 1957 - Apr lastSun 2:00 1:00 D
+Rule Regina 1947 1957 - Sep lastSun 2:00 0 S
+Rule Regina 1959 only - Apr lastSun 2:00 1:00 D
+Rule Regina 1959 only - Oct lastSun 2:00 0 S
+#
+Rule Swift 1957 only - Apr lastSun 2:00 1:00 D
+Rule Swift 1957 only - Oct lastSun 2:00 0 S
+Rule Swift 1959 1961 - Apr lastSun 2:00 1:00 D
+Rule Swift 1959 only - Oct lastSun 2:00 0 S
+Rule Swift 1960 1961 - Sep lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Regina -6:58:36 - LMT 1905 Sep
+ -7:00 Regina M%sT 1960 Apr lastSun 2:00
+ -6:00 - CST
+Zone America/Swift_Current -7:11:20 - LMT 1905 Sep
+ -7:00 Canada M%sT 1946 Apr lastSun 2:00
+ -7:00 Regina M%sT 1950
+ -7:00 Swift M%sT 1972 Apr lastSun 2:00
+ -6:00 - CST
+
+
+# Alberta
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Edm 1918 1919 - Apr Sun>=8 2:00 1:00 D
+Rule Edm 1918 only - Oct 31 2:00 0 S
+Rule Edm 1919 only - May 27 2:00 0 S
+Rule Edm 1920 1923 - Apr lastSun 2:00 1:00 D
+Rule Edm 1920 only - Oct lastSun 2:00 0 S
+Rule Edm 1921 1923 - Sep lastSun 2:00 0 S
+Rule Edm 1942 only - Feb 9 2:00 1:00 W # War
+Rule Edm 1945 only - Aug 14 23:00u 1:00 P # Peace
+Rule Edm 1945 only - Sep lastSun 2:00 0 S
+Rule Edm 1947 only - Apr lastSun 2:00 1:00 D
+Rule Edm 1947 only - Sep lastSun 2:00 0 S
+Rule Edm 1967 only - Apr lastSun 2:00 1:00 D
+Rule Edm 1967 only - Oct lastSun 2:00 0 S
+Rule Edm 1969 only - Apr lastSun 2:00 1:00 D
+Rule Edm 1969 only - Oct lastSun 2:00 0 S
+Rule Edm 1972 1986 - Apr lastSun 2:00 1:00 D
+Rule Edm 1972 2006 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Edmonton -7:33:52 - LMT 1906 Sep
+ -7:00 Edm M%sT 1987
+ -7:00 Canada M%sT
+
+
+# British Columbia
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger write that since 1970 most of this region has
+# been like Vancouver.
+# Dawson Creek uses MST. Much of east BC is like Edmonton.
+# Matthews and Vincent (1998) write that Creston is like Dawson Creek.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Vanc 1918 only - Apr 14 2:00 1:00 D
+Rule Vanc 1918 only - Oct 31 2:00 0 S
+Rule Vanc 1942 only - Feb 9 2:00 1:00 W # War
+Rule Vanc 1945 only - Aug 14 23:00u 1:00 P # Peace
+Rule Vanc 1945 only - Sep 30 2:00 0 S
+Rule Vanc 1946 1986 - Apr lastSun 2:00 1:00 D
+Rule Vanc 1946 only - Oct 13 2:00 0 S
+Rule Vanc 1947 1961 - Sep lastSun 2:00 0 S
+Rule Vanc 1962 2006 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Vancouver -8:12:28 - LMT 1884
+ -8:00 Vanc P%sT 1987
+ -8:00 Canada P%sT
+Zone America/Dawson_Creek -8:00:56 - LMT 1884
+ -8:00 Canada P%sT 1947
+ -8:00 Vanc P%sT 1972 Aug 30 2:00
+ -7:00 - MST
+
+
+# Northwest Territories, Nunavut, Yukon
+
+# From Paul Eggert (2006-03-22):
+# Dawson switched to PST in 1973. Inuvik switched to MST in 1979.
+# Mathew Englander (1996-10-07) gives the following refs:
+# * 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
+# c. 7 defines Yukon standard time as UTC-9. This is still valid;
+# see Interpretation Act, R.S.C. 1985, c. I-21, s. 35(1).
+# * C.O. 1973/214 switched Yukon to PST on 1973-10-28 00:00.
+# * O.I.C. 1980/02 established DST.
+# * O.I.C. 1987/056 changed DST to Apr firstSun 2:00 to Oct lastSun 2:00.
+# Shanks & Pottenger say Yukon's 1973-10-28 switch was at 2:00; go
+# with Englander.
+# From Chris Walton (2006-06-26):
+# Here is a link to the old daylight saving portion of the interpretation
+# act which was last updated in 1987:
+# http://www.gov.yk.ca/legislation/regs/oic1987_056.pdf
+
+# From Rives McDow (1999-09-04):
+# Nunavut ... moved ... to incorporate the whole territory into one time zone.
+# <a href="http://www.nunatsiaq.com/nunavut/nvt90903_13.html">
+# Nunavut moves to single time zone Oct. 31
+# </a>
+#
+# From Antoine Leca (1999-09-06):
+# We then need to create a new timezone for the Kitikmeot region of Nunavut
+# to differentiate it from the Yellowknife region.
+
+# From Paul Eggert (1999-09-20):
+# <a href="http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html">
+# Basic Facts: The New Territory
+# </a> (1999) reports that Pangnirtung operates on eastern time,
+# and that Coral Harbour does not observe DST. We don't know when
+# Pangnirtung switched to eastern time; we'll guess 1995.
+
+# From Rives McDow (1999-11-08):
+# On October 31, when the rest of Nunavut went to Central time,
+# Pangnirtung wobbled. Here is the result of their wobble:
+#
+# The following businesses and organizations in Pangnirtung use Central Time:
+#
+# First Air, Power Corp, Nunavut Construction, Health Center, RCMP,
+# Eastern Arctic National Parks, A & D Specialist
+#
+# The following businesses and organizations in Pangnirtung use Eastern Time:
+#
+# Hamlet office, All other businesses, Both schools, Airport operator
+#
+# This has made for an interesting situation there, which warranted the news.
+# No one there that I spoke with seems concerned, or has plans to
+# change the local methods of keeping time, as it evidently does not
+# really interfere with any activities or make things difficult locally.
+# They plan to celebrate New Year's turn-over twice, one hour apart,
+# so it appears that the situation will last at least that long.
+# The Nunavut Intergovernmental Affairs hopes that they will "come to
+# their senses", but the locals evidently don't see any problem with
+# the current state of affairs.
+
+# From Michaela Rodrigue, writing in the
+# <a href="http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html">
+# Nunatsiaq News (1999-11-19)</a>:
+# Clyde River, Pangnirtung and Sanikiluaq now operate with two time zones,
+# central - or Nunavut time - for government offices, and eastern time
+# for municipal offices and schools.... Igloolik [was similar but then]
+# made the switch to central time on Saturday, Nov. 6.
+
+# From Paul Eggert (2000-10-02):
+# Matthews and Vincent (1998) say the following, but we lack histories
+# for these potential new Zones.
+#
+# The Canadian Forces station at Alert uses Eastern Time while the
+# handful of residents at the Eureka weather station [in the Central
+# zone] skip daylight savings. Baffin Island, which is crossed by the
+# Central, Eastern and Atlantic Time zones only uses Eastern Time.
+# Gjoa Haven, Taloyoak and Pelly Bay all use Mountain instead of
+# Central Time and Southampton Island [in the Central zone] is not
+# required to use daylight savings.
+
+# From
+# <a href="http://www.nunatsiaq.com/archives/nunavut001130/nvt21110_02.html">
+# Nunavut now has two time zones
+# </a> (2000-11-10):
+# The Nunavut government would allow its employees in Kugluktuk and
+# Cambridge Bay to operate on central time year-round, putting them
+# one hour behind the rest of Nunavut for six months during the winter.
+# At the end of October the two communities had rebelled against
+# Nunavut's unified time zone, refusing to shift to eastern time with
+# the rest of the territory for the winter. Cambridge Bay remained on
+# central time, while Kugluktuk, even farther west, reverted to
+# mountain time, which they had used before the advent of Nunavut's
+# unified time zone in 1999.
+#
+# From Rives McDow (2001-01-20), quoting the Nunavut government:
+# The preceding decision came into effect at midnight, Saturday Nov 4, 2000.
+
+# From Paul Eggert (2000-12-04):
+# Let's just keep track of the official times for now.
+
+# From Rives McDow (2001-03-07):
+# The premier of Nunavut has issued a ministerial statement advising
+# that effective 2001-04-01, the territory of Nunavut will revert
+# back to three time zones (mountain, central, and eastern). Of the
+# cities in Nunavut, Coral Harbor is the only one that I know of that
+# has said it will not observe dst, staying on EST year round. I'm
+# checking for more info, and will get back to you if I come up with
+# more.
+# [Also see <http://www.nunatsiaq.com/nunavut/nvt10309_06.html> (2001-03-09).]
+
+# From Gwillim Law (2005-05-21):
+# According to maps at
+# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SWE.jpg
+# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SSE.jpg
+# (both dated 2003), and
+# http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp
+# (from a 1998 Canadian Geographic article), the de facto and de jure time
+# for Southampton Island (at the north end of Hudson Bay) is UTC-5 all year
+# round. Using Google, it's easy to find other websites that confirm this.
+# I wasn't able to find how far back this time regimen goes, but since it
+# predates the creation of Nunavut, it probably goes back many years....
+# The Inuktitut name of Coral Harbour is Sallit, but it's rarely used.
+#
+# From Paul Eggert (2005-07-26):
+# For lack of better information, assume that Southampton Island observed
+# daylight saving only during wartime.
+
+# From Chris Walton (2007-03-01):
+# ... the community of Resolute (located on Cornwallis Island in
+# Nunavut) moved from Central Time to Eastern Time last November.
+# Basically the community did not change its clocks at the end of
+# daylight saving....
+# http://www.nnsl.com/frames/newspapers/2006-11/nov13_06none.html
+
+# From Chris Walton (2007-03-14):
+# Today I phoned the "hamlet office" to find out what Resolute was doing with
+# its clocks.
+#
+# The individual that answered the phone confirmed that the clocks did not
+# move at the end of daylight saving on October 29/2006. He also told me that
+# the clocks did not move this past weekend (March 11/2007)....
+
+# From Chris Walton (2008-11-13):
+# ...the residents of Resolute believe that they are changing "time zones"
+# twice a year. In winter months, local time is qualified with "Eastern
+# Time" which is really "Eastern Standard Time (UTC-5)". In summer
+# months, local time is qualified with "Central Time" which is really
+# "Central Daylight Time (UTC-5)"...
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule NT_YK 1918 only - Apr 14 2:00 1:00 D
+Rule NT_YK 1918 only - Oct 27 2:00 0 S
+Rule NT_YK 1919 only - May 25 2:00 1:00 D
+Rule NT_YK 1919 only - Nov 1 0:00 0 S
+Rule NT_YK 1942 only - Feb 9 2:00 1:00 W # War
+Rule NT_YK 1945 only - Aug 14 23:00u 1:00 P # Peace
+Rule NT_YK 1945 only - Sep 30 2:00 0 S
+Rule NT_YK 1965 only - Apr lastSun 0:00 2:00 DD
+Rule NT_YK 1965 only - Oct lastSun 2:00 0 S
+Rule NT_YK 1980 1986 - Apr lastSun 2:00 1:00 D
+Rule NT_YK 1980 2006 - Oct lastSun 2:00 0 S
+Rule NT_YK 1987 2006 - Apr Sun>=1 2:00 1:00 D
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+# aka Panniqtuuq
+Zone America/Pangnirtung 0 - zzz 1921 # trading post est.
+ -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00
+ -5:00 Canada E%sT 1999 Oct 31 2:00
+ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 Canada E%sT
+# formerly Frobisher Bay
+Zone America/Iqaluit 0 - zzz 1942 Aug # Frobisher Bay est.
+ -5:00 NT_YK E%sT 1999 Oct 31 2:00
+ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 Canada E%sT
+# aka Qausuittuq
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Resolute 2006 max - Nov Sun>=1 2:00 0 ES
+Rule Resolute 2007 max - Mar Sun>=8 2:00 0 CD
+Zone America/Resolute 0 - zzz 1947 Aug 31 # Resolute founded
+ -6:00 NT_YK C%sT 2000 Oct 29 2:00
+ -5:00 - EST 2001 Apr 1 3:00
+ -6:00 Canada C%sT 2006 Oct 29 2:00
+ -5:00 Resolute %sT
+# aka Kangiqiniq
+Zone America/Rankin_Inlet 0 - zzz 1957 # Rankin Inlet founded
+ -6:00 NT_YK C%sT 2000 Oct 29 2:00
+ -5:00 - EST 2001 Apr 1 3:00
+ -6:00 Canada C%sT
+# aka Iqaluktuuttiaq
+Zone America/Cambridge_Bay 0 - zzz 1920 # trading post est.?
+ -7:00 NT_YK M%sT 1999 Oct 31 2:00
+ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 - EST 2000 Nov 5 0:00
+ -6:00 - CST 2001 Apr 1 3:00
+ -7:00 Canada M%sT
+Zone America/Yellowknife 0 - zzz 1935 # Yellowknife founded?
+ -7:00 NT_YK M%sT 1980
+ -7:00 Canada M%sT
+Zone America/Inuvik 0 - zzz 1953 # Inuvik founded
+ -8:00 NT_YK P%sT 1979 Apr lastSun 2:00
+ -7:00 NT_YK M%sT 1980
+ -7:00 Canada M%sT
+Zone America/Whitehorse -9:00:12 - LMT 1900 Aug 20
+ -9:00 NT_YK Y%sT 1966 Jul 1 2:00
+ -8:00 NT_YK P%sT 1980
+ -8:00 Canada P%sT
+Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
+ -9:00 NT_YK Y%sT 1973 Oct 28 0:00
+ -8:00 NT_YK P%sT 1980
+ -8:00 Canada P%sT
+
+
+###############################################################################
+
+# Mexico
+
+# From Paul Eggert (2001-03-05):
+# The Investigation and Analysis Service of the
+# Mexican Library of Congress (MLoC) has published a
+# <a href="http://www.cddhcu.gob.mx/bibliot/publica/inveyana/polisoc/horver/">
+# history of Mexican local time (in Spanish)
+# </a>.
+#
+# Here are the discrepancies between Shanks & Pottenger (S&P) and the MLoC.
+# (In all cases we go with the MLoC.)
+# S&P report that Baja was at -8:00 in 1922/1923.
+# S&P say the 1930 transition in Baja was 1930-11-16.
+# S&P report no DST during summer 1931.
+# S&P report a transition at 1932-03-30 23:00, not 1932-04-01.
+
+# From Gwillim Law (2001-02-20):
+# There are some other discrepancies between the Decrees page and the
+# tz database. I think they can best be explained by supposing that
+# the researchers who prepared the Decrees page failed to find some of
+# the relevant documents.
+
+# From Alan Perry (1996-02-15):
+# A guy from our Mexico subsidiary finally found the Presidential Decree
+# outlining the timezone changes in Mexico.
+#
+# ------------- Begin Forwarded Message -------------
+#
+# I finally got my hands on the Official Presidential Decree that sets up the
+# rules for the DST changes. The rules are:
+#
+# 1. The country is divided in 3 timezones:
+# - Baja California Norte (the Mexico/BajaNorte TZ)
+# - Baja California Sur, Nayarit, Sinaloa and Sonora (the Mexico/BajaSur TZ)
+# - The rest of the country (the Mexico/General TZ)
+#
+# 2. From the first Sunday in April at 2:00 AM to the last Sunday in October
+# at 2:00 AM, the times in each zone are as follows:
+# BajaNorte: GMT+7
+# BajaSur: GMT+6
+# General: GMT+5
+#
+# 3. The rest of the year, the times are as follows:
+# BajaNorte: GMT+8
+# BajaSur: GMT+7
+# General: GMT+6
+#
+# The Decree was published in Mexico's Official Newspaper on January 4th.
+#
+# -------------- End Forwarded Message --------------
+# From Paul Eggert (1996-06-12):
+# For an English translation of the decree, see
+# <a href="http://mexico-travel.com/extra/timezone_eng.html">
+# ``Diario Oficial: Time Zone Changeover'' (1996-01-04).
+# </a>
+
+# From Rives McDow (1998-10-08):
+# The State of Quintana Roo has reverted back to central STD and DST times
+# (i.e. UTC -0600 and -0500 as of 1998-08-02).
+
+# From Rives McDow (2000-01-10):
+# Effective April 4, 1999 at 2:00 AM local time, Sonora changed to the time
+# zone 5 hours from the International Date Line, and will not observe daylight
+# savings time so as to stay on the same time zone as the southern part of
+# Arizona year round.
+
+# From Jesper Norgaard, translating
+# <http://www.reforma.com/nacional/articulo/064327/> (2001-01-17):
+# In Oaxaca, the 55.000 teachers from the Section 22 of the National
+# Syndicate of Education Workers, refuse to apply daylight saving each
+# year, so that the more than 10,000 schools work at normal hour the
+# whole year.
+
+# From Gwillim Law (2001-01-19):
+# <http://www.reforma.com/negocios_y_dinero/articulo/064481/> ... says
+# (translated):...
+# January 17, 2000 - The Energy Secretary, Ernesto Martens, announced
+# that Summer Time will be reduced from seven to five months, starting
+# this year....
+# <http://www.publico.com.mx/scripts/texto3.asp?action=pagina&pag=21&pos=p&secc=naci&date=01/17/2001>
+# [translated], says "summer time will ... take effect on the first Sunday
+# in May, and end on the last Sunday of September.
+
+# From Arthur David Olson (2001-01-25):
+# The 2001-01-24 traditional Washington Post contained the page one
+# story "Timely Issue Divides Mexicans."...
+# http://www.washingtonpost.com/wp-dyn/articles/A37383-2001Jan23.html
+# ... Mexico City Mayor Lopez Obrador "...is threatening to keep
+# Mexico City and its 20 million residents on a different time than
+# the rest of the country..." In particular, Lopez Obrador would abolish
+# observation of Daylight Saving Time.
+
+# <a href="http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre">
+# Official statute published by the Energy Department
+# </a> (2001-02-01) shows Baja and Chihauhua as still using US DST rules,
+# and Sonora with no DST. This was reported by Jesper Norgaard (2001-02-03).
+
+# From Paul Eggert (2001-03-03):
+#
+# <a href="http://www.latimes.com/news/nation/20010303/t000018766.html">
+# James F. Smith writes in today's LA Times
+# </a>
+# * Sonora will continue to observe standard time.
+# * Last week Mexico City's mayor Andres Manuel Lopez Obrador decreed that
+# the Federal District will not adopt DST.
+# * 4 of 16 district leaders announced they'll ignore the decree.
+# * The decree does not affect federal-controlled facilities including
+# the airport, banks, hospitals, and schools.
+#
+# For now we'll assume that the Federal District will bow to federal rules.
+
+# From Jesper Norgaard (2001-04-01):
+# I found some references to the Mexican application of daylight
+# saving, which modifies what I had already sent you, stating earlier
+# that a number of northern Mexican states would go on daylight
+# saving. The modification reverts this to only cover Baja California
+# (Norte), while all other states (except Sonora, who has no daylight
+# saving all year) will follow the original decree of president
+# Vicente Fox, starting daylight saving May 6, 2001 and ending
+# September 30, 2001.
+# References: "Diario de Monterrey" <www.diariodemonterrey.com/index.asp>
+# Palabra <http://palabra.infosel.com/010331/primera/ppri3101.pdf> (2001-03-31)
+
+# From Reuters (2001-09-04):
+# Mexico's Supreme Court on Tuesday declared that daylight savings was
+# unconstitutional in Mexico City, creating the possibility the
+# capital will be in a different time zone from the rest of the nation
+# next year.... The Supreme Court's ruling takes effect at 2:00
+# a.m. (0800 GMT) on Sept. 30, when Mexico is scheduled to revert to
+# standard time. "This is so residents of the Federal District are not
+# subject to unexpected time changes," a statement from the court said.
+
+# From Jesper Norgaard Welen (2002-03-12):
+# ... consulting my local grocery store(!) and my coworkers, they all insisted
+# that a new decision had been made to reinstate US style DST in Mexico....
+# http://www.conae.gob.mx/ahorro/horaver2001_m1_2002.html (2002-02-20)
+# confirms this. Sonora as usual is the only state where DST is not applied.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Mexico 1939 only - Feb 5 0:00 1:00 D
+Rule Mexico 1939 only - Jun 25 0:00 0 S
+Rule Mexico 1940 only - Dec 9 0:00 1:00 D
+Rule Mexico 1941 only - Apr 1 0:00 0 S
+Rule Mexico 1943 only - Dec 16 0:00 1:00 W # War
+Rule Mexico 1944 only - May 1 0:00 0 S
+Rule Mexico 1950 only - Feb 12 0:00 1:00 D
+Rule Mexico 1950 only - Jul 30 0:00 0 S
+Rule Mexico 1996 2000 - Apr Sun>=1 2:00 1:00 D
+Rule Mexico 1996 2000 - Oct lastSun 2:00 0 S
+Rule Mexico 2001 only - May Sun>=1 2:00 1:00 D
+Rule Mexico 2001 only - Sep lastSun 2:00 0 S
+Rule Mexico 2002 max - Apr Sun>=1 2:00 1:00 D
+Rule Mexico 2002 max - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+# Quintana Roo
+Zone America/Cancun -5:47:04 - LMT 1922 Jan 1 0:12:56
+ -6:00 - CST 1981 Dec 23
+ -5:00 Mexico E%sT 1998 Aug 2 2:00
+ -6:00 Mexico C%sT
+# Campeche, Yucatan
+Zone America/Merida -5:58:28 - LMT 1922 Jan 1 0:01:32
+ -6:00 - CST 1981 Dec 23
+ -5:00 - EST 1982 Dec 2
+ -6:00 Mexico C%sT
+# Coahuila, Durango, Nuevo Leon, Tamaulipas
+Zone America/Monterrey -6:41:16 - LMT 1921 Dec 31 23:18:44
+ -6:00 - CST 1988
+ -6:00 US C%sT 1989
+ -6:00 Mexico C%sT
+# Central Mexico
+Zone America/Mexico_City -6:36:36 - LMT 1922 Jan 1 0:23:24
+ -7:00 - MST 1927 Jun 10 23:00
+ -6:00 - CST 1930 Nov 15
+ -7:00 - MST 1931 May 1 23:00
+ -6:00 - CST 1931 Oct
+ -7:00 - MST 1932 Apr 1
+ -6:00 Mexico C%sT 2001 Sep 30 02:00
+ -6:00 - CST 2002 Feb 20
+ -6:00 Mexico C%sT
+# Chihuahua
+Zone America/Chihuahua -7:04:20 - LMT 1921 Dec 31 23:55:40
+ -7:00 - MST 1927 Jun 10 23:00
+ -6:00 - CST 1930 Nov 15
+ -7:00 - MST 1931 May 1 23:00
+ -6:00 - CST 1931 Oct
+ -7:00 - MST 1932 Apr 1
+ -6:00 - CST 1996
+ -6:00 Mexico C%sT 1998
+ -6:00 - CST 1998 Apr Sun>=1 3:00
+ -7:00 Mexico M%sT
+# Sonora
+Zone America/Hermosillo -7:23:52 - LMT 1921 Dec 31 23:36:08
+ -7:00 - MST 1927 Jun 10 23:00
+ -6:00 - CST 1930 Nov 15
+ -7:00 - MST 1931 May 1 23:00
+ -6:00 - CST 1931 Oct
+ -7:00 - MST 1932 Apr 1
+ -6:00 - CST 1942 Apr 24
+ -7:00 - MST 1949 Jan 14
+ -8:00 - PST 1970
+ -7:00 Mexico M%sT 1999
+ -7:00 - MST
+# Baja California Sur, Nayarit, Sinaloa
+Zone America/Mazatlan -7:05:40 - LMT 1921 Dec 31 23:54:20
+ -7:00 - MST 1927 Jun 10 23:00
+ -6:00 - CST 1930 Nov 15
+ -7:00 - MST 1931 May 1 23:00
+ -6:00 - CST 1931 Oct
+ -7:00 - MST 1932 Apr 1
+ -6:00 - CST 1942 Apr 24
+ -7:00 - MST 1949 Jan 14
+ -8:00 - PST 1970
+ -7:00 Mexico M%sT
+# Baja California
+Zone America/Tijuana -7:48:04 - LMT 1922 Jan 1 0:11:56
+ -7:00 - MST 1924
+ -8:00 - PST 1927 Jun 10 23:00
+ -7:00 - MST 1930 Nov 15
+ -8:00 - PST 1931 Apr 1
+ -8:00 1:00 PDT 1931 Sep 30
+ -8:00 - PST 1942 Apr 24
+ -8:00 1:00 PWT 1945 Aug 14 23:00u
+ -8:00 1:00 PPT 1945 Nov 12 # Peace
+ -8:00 - PST 1948 Apr 5
+ -8:00 1:00 PDT 1949 Jan 14
+ -8:00 - PST 1954
+ -8:00 CA P%sT 1961
+ -8:00 - PST 1976
+ -8:00 US P%sT 1996
+ -8:00 Mexico P%sT 2001
+ -8:00 US P%sT 2002 Feb 20
+ -8:00 Mexico P%sT
+# From Paul Eggert (2006-03-22):
+# Formerly there was an America/Ensenada zone, which differed from
+# America/Tijuana only in that it did not observe DST from 1976
+# through 1995. This was as per Shanks (1999). But Shanks & Pottenger say
+# Ensenada did not observe DST from 1948 through 1975. Guy Harris reports
+# that the 1987 OAG says "Only Ensenada, Mexicale, San Felipe and
+# Tijuana observe DST," which agrees with Shanks & Pottenger but implies that
+# DST-observance was a town-by-town matter back then. This concerns
+# data after 1970 so most likely there should be at least one Zone
+# other than America/Tijuana for Baja, but it's not clear yet what its
+# name or contents should be.
+#
+# Revillagigedo Is
+# no information
+
+###############################################################################
+
+# Anguilla
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Anguilla -4:12:16 - LMT 1912 Mar 2
+ -4:00 - AST
+
+# Antigua and Barbuda
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Antigua -4:07:12 - LMT 1912 Mar 2
+ -5:00 - EST 1951
+ -4:00 - AST
+
+# Bahamas
+#
+# From Sue Williams (2006-12-07):
+# The Bahamas announced about a month ago that they plan to change their DST
+# rules to sync with the U.S. starting in 2007....
+# http://www.jonesbahamas.com/?c=45&a=10412
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Bahamas 1964 1975 - Oct lastSun 2:00 0 S
+Rule Bahamas 1964 1975 - Apr lastSun 2:00 1:00 D
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Nassau -5:09:24 - LMT 1912 Mar 2
+ -5:00 Bahamas E%sT 1976
+ -5:00 US E%sT
+
+# Barbados
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Barb 1977 only - Jun 12 2:00 1:00 D
+Rule Barb 1977 1978 - Oct Sun>=1 2:00 0 S
+Rule Barb 1978 1980 - Apr Sun>=15 2:00 1:00 D
+Rule Barb 1979 only - Sep 30 2:00 0 S
+Rule Barb 1980 only - Sep 25 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Barbados -3:58:28 - LMT 1924 # Bridgetown
+ -3:58:28 - BMT 1932 # Bridgetown Mean Time
+ -4:00 Barb A%sT
+
+# Belize
+# Whitman entirely disagrees with Shanks; go with Shanks & Pottenger.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Belize 1918 1942 - Oct Sun>=2 0:00 0:30 HD
+Rule Belize 1919 1943 - Feb Sun>=9 0:00 0 S
+Rule Belize 1973 only - Dec 5 0:00 1:00 D
+Rule Belize 1974 only - Feb 9 0:00 0 S
+Rule Belize 1982 only - Dec 18 0:00 1:00 D
+Rule Belize 1983 only - Feb 12 0:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Belize -5:52:48 - LMT 1912 Apr
+ -6:00 Belize C%sT
+
+# Bermuda
+
+# From Dan Jones, reporting in The Royal Gazette (2006-06-26):
+
+# Next year, however, clocks in the US will go forward on the second Sunday
+# in March, until the first Sunday in November. And, after the Time Zone
+# (Seasonal Variation) Bill 2006 was passed in the House of Assembly on
+# Friday, the same thing will happen in Bermuda.
+# http://www.theroyalgazette.com/apps/pbcs.dll/article?AID=/20060529/NEWS/105290135
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Atlantic/Bermuda -4:19:04 - LMT 1930 Jan 1 2:00 # Hamilton
+ -4:00 - AST 1974 Apr 28 2:00
+ -4:00 Bahamas A%sT 1976
+ -4:00 US A%sT
+
+# Cayman Is
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
+ -5:07:12 - KMT 1912 Feb # Kingston Mean Time
+ -5:00 - EST
+
+# Costa Rica
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule CR 1979 1980 - Feb lastSun 0:00 1:00 D
+Rule CR 1979 1980 - Jun Sun>=1 0:00 0 S
+Rule CR 1991 1992 - Jan Sat>=15 0:00 1:00 D
+# IATA SSIM (1991-09) says the following was at 1:00;
+# go with Shanks & Pottenger.
+Rule CR 1991 only - Jul 1 0:00 0 S
+Rule CR 1992 only - Mar 15 0:00 0 S
+# There are too many San Joses elsewhere, so we'll use `Costa Rica'.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Costa_Rica -5:36:20 - LMT 1890 # San Jose
+ -5:36:20 - SJMT 1921 Jan 15 # San Jose Mean Time
+ -6:00 CR C%sT
+# Coco
+# no information; probably like America/Costa_Rica
+
+# Cuba
+
+# From Arthur David Olson (1999-03-29):
+# The 1999-03-28 exhibition baseball game held in Havana, Cuba, between
+# the Cuban National Team and the Baltimore Orioles was carried live on
+# the Orioles Radio Network, including affiliate WTOP in Washington, DC.
+# During the game, play-by-play announcer Jim Hunter noted that
+# "We'll be losing two hours of sleep...Cuba switched to Daylight Saving
+# Time today." (The "two hour" remark referred to losing one hour of
+# sleep on 1999-03-28--when the announcers were in Cuba as it switched
+# to DST--and one more hour on 1999-04-04--when the announcers will have
+# returned to Baltimore, which switches on that date.)
+
+# From Evert van der Veer via Steffen Thorsen (2004-10-28):
+# Cuba is not going back to standard time this year.
+# From Paul Eggert (2006-03-22):
+# http://www.granma.cu/ingles/2004/septiembre/juev30/41medid-i.html
+# says that it's due to a problem at the Antonio Guiteras
+# thermoelectric plant, and says "This October there will be no return
+# to normal hours (after daylight saving time)".
+# For now, let's assume that it's a temporary measure.
+
+# From Carlos A. Carnero Delgado (2005-11-12):
+# This year (just like in 2004-2005) there's no change in time zone
+# adjustment in Cuba. We will stay in daylight saving time:
+# http://www.granma.cu/espanol/2005/noviembre/mier9/horario.html
+
+# From Jesper Norgaard Welen (2006-10-21):
+# An article in GRANMA INTERNACIONAL claims that Cuba will end
+# the 3 years of permanent DST next weekend, see
+# http://www.granma.cu/ingles/2006/octubre/lun16/43horario.html
+# "On Saturday night, October 28 going into Sunday, October 29, at 01:00,
+# watches should be set back one hour -- going back to 00:00 hours -- returning
+# to the normal schedule....
+
+# From Paul Eggert (2007-03-02):
+# http://www.granma.cubaweb.cu/english/news/art89.html, dated yesterday,
+# says Cuban clocks will advance at midnight on March 10.
+# For lack of better information, assume Cuba will use US rules,
+# except that it switches at midnight standard time as usual.
+#
+# From Steffen Thorsen (2007-10-25):
+# Carlos Alberto Fonseca Arauz informed me that Cuba will end DST one week
+# earlier - on the last Sunday of October, just like in 2006.
+#
+# He supplied these references:
+#
+# http://www.prensalatina.com.mx/article.asp?ID=%7B4CC32C1B-A9F7-42FB-8A07-8631AFC923AF%7D&language=ES
+# http://actualidad.terra.es/sociedad/articulo/cuba_llama_ahorrar_energia_cambio_1957044.htm
+#
+# From Alex Kryvenishev (2007-10-25):
+# Here is also article from Granma (Cuba):
+#
+# [Regira] el Horario Normal desde el [proximo] domingo 28 de octubre
+# http://www.granma.cubaweb.cu/2007/10/24/nacional/artic07.html
+#
+# http://www.worldtimezone.com/dst_news/dst_news_cuba03.html
+
+# From Arthur David Olson (2008-03-09):
+# I'm in Maryland which is now observing United States Eastern Daylight
+# Time. At 9:44 local time I used RealPlayer to listen to
+# <a href="http://media.enet.cu/radioreloj">
+# http://media.enet.cu/radioreloj
+# </a>, a Cuban information station, and heard
+# the time announced as "ocho cuarenta y cuatro" ("eight forty-four"),
+# indicating that Cuba is still on standard time.
+
+# From Steffen Thorsen (2008-03-12):
+# It seems that Cuba will start DST on Sunday, 2007-03-16...
+# It was announced yesterday, according to this source (in Spanish):
+# <a href="http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm">
+# http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm
+# </a>
+#
+# Some more background information is posted here:
+# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html">
+# http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
+# </a>
+#
+# The article also says that Cuba has been observing DST since 1963,
+# while Shanks (and tzdata) has 1965 as the first date (except in the
+# 1940's). Many other web pages in Cuba also claim that it has been
+# observed since 1963, but with the exception of 1970 - an exception
+# which is not present in tzdata/Shanks. So there is a chance we need to
+# change some historic records as well.
+#
+# One example:
+# <a href="http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm">
+# http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm
+# </a>
+
+# From Jesper Norgaard Welen (2008-03-13):
+# The Cuban time change has just been confirmed on the most authoritative
+# web site, the Granma. Please check out
+# <a href="http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html">
+# http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html
+# </a>
+#
+# Basically as expected after Steffen Thorsens information, the change
+# will take place midnight between Saturday and Sunday.
+
+# From Arthur David Olson (2008-03-12):
+# Assume Sun>=15 (third Sunday) going forward.
+
+# From Alexander Krivenyshev (2009-03-04)
+# According to the Radio Reloj - Cuba will start Daylight Saving Time on
+# midnight between Saturday, March 07, 2009 and Sunday, March 08, 2009-
+# not on midnight March 14 / March 15 as previously thought.
+#
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_cuba05.html">
+# http://www.worldtimezone.com/dst_news/dst_news_cuba05.html
+# (in Spanish)
+# </a>
+
+# From Arthur David Olson (2009-03-09)
+# I listened over the Internet to
+# <a href="http://media.enet.cu/readioreloj">
+# http://media.enet.cu/readioreloj
+# </a>
+# this morning; when it was 10:05 a. m. here in Bethesda, Maryland the
+# the time was announced as "diez cinco"--the same time as here, indicating
+# that has indeed switched to DST. Assume second Sunday from 2009 forward.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Cuba 1928 only - Jun 10 0:00 1:00 D
+Rule Cuba 1928 only - Oct 10 0:00 0 S
+Rule Cuba 1940 1942 - Jun Sun>=1 0:00 1:00 D
+Rule Cuba 1940 1942 - Sep Sun>=1 0:00 0 S
+Rule Cuba 1945 1946 - Jun Sun>=1 0:00 1:00 D
+Rule Cuba 1945 1946 - Sep Sun>=1 0:00 0 S
+Rule Cuba 1965 only - Jun 1 0:00 1:00 D
+Rule Cuba 1965 only - Sep 30 0:00 0 S
+Rule Cuba 1966 only - May 29 0:00 1:00 D
+Rule Cuba 1966 only - Oct 2 0:00 0 S
+Rule Cuba 1967 only - Apr 8 0:00 1:00 D
+Rule Cuba 1967 1968 - Sep Sun>=8 0:00 0 S
+Rule Cuba 1968 only - Apr 14 0:00 1:00 D
+Rule Cuba 1969 1977 - Apr lastSun 0:00 1:00 D
+Rule Cuba 1969 1971 - Oct lastSun 0:00 0 S
+Rule Cuba 1972 1974 - Oct 8 0:00 0 S
+Rule Cuba 1975 1977 - Oct lastSun 0:00 0 S
+Rule Cuba 1978 only - May 7 0:00 1:00 D
+Rule Cuba 1978 1990 - Oct Sun>=8 0:00 0 S
+Rule Cuba 1979 1980 - Mar Sun>=15 0:00 1:00 D
+Rule Cuba 1981 1985 - May Sun>=5 0:00 1:00 D
+Rule Cuba 1986 1989 - Mar Sun>=14 0:00 1:00 D
+Rule Cuba 1990 1997 - Apr Sun>=1 0:00 1:00 D
+Rule Cuba 1991 1995 - Oct Sun>=8 0:00s 0 S
+Rule Cuba 1996 only - Oct 6 0:00s 0 S
+Rule Cuba 1997 only - Oct 12 0:00s 0 S
+Rule Cuba 1998 1999 - Mar lastSun 0:00s 1:00 D
+Rule Cuba 1998 2003 - Oct lastSun 0:00s 0 S
+Rule Cuba 2000 2004 - Apr Sun>=1 0:00s 1:00 D
+Rule Cuba 2006 max - Oct lastSun 0:00s 0 S
+Rule Cuba 2007 only - Mar Sun>=8 0:00s 1:00 D
+Rule Cuba 2008 only - Mar Sun>=15 0:00s 1:00 D
+Rule Cuba 2009 max - Mar Sun>=8 0:00s 1:00 D
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Havana -5:29:28 - LMT 1890
+ -5:29:36 - HMT 1925 Jul 19 12:00 # Havana MT
+ -5:00 Cuba C%sT
+
+# Dominica
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Dominica -4:05:36 - LMT 1911 Jul 1 0:01 # Roseau
+ -4:00 - AST
+
+# Dominican Republic
+
+# From Steffen Thorsen (2000-10-30):
+# Enrique Morales reported to me that the Dominican Republic has changed the
+# time zone to Eastern Standard Time as of Sunday 29 at 2 am....
+# http://www.listin.com.do/antes/261000/republica/princi.html
+
+# From Paul Eggert (2000-12-04):
+# That URL (2000-10-26, in Spanish) says they planned to use US-style DST.
+
+# From Rives McDow (2000-12-01):
+# Dominican Republic changed its mind and presidential decree on Tuesday,
+# November 28, 2000, with a new decree. On Sunday, December 3 at 1:00 AM the
+# Dominican Republic will be reverting to 8 hours from the International Date
+# Line, and will not be using DST in the foreseeable future. The reason they
+# decided to use DST was to be in synch with Puerto Rico, who was also going
+# to implement DST. When Puerto Rico didn't implement DST, the president
+# decided to revert.
+
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule DR 1966 only - Oct 30 0:00 1:00 D
+Rule DR 1967 only - Feb 28 0:00 0 S
+Rule DR 1969 1973 - Oct lastSun 0:00 0:30 HD
+Rule DR 1970 only - Feb 21 0:00 0 S
+Rule DR 1971 only - Jan 20 0:00 0 S
+Rule DR 1972 1974 - Jan 21 0:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Santo_Domingo -4:39:36 - LMT 1890
+ -4:40 - SDMT 1933 Apr 1 12:00 # S. Dom. MT
+ -5:00 DR E%sT 1974 Oct 27
+ -4:00 - AST 2000 Oct 29 02:00
+ -5:00 US E%sT 2000 Dec 3 01:00
+ -4:00 - AST
+
+# El Salvador
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Salv 1987 1988 - May Sun>=1 0:00 1:00 D
+Rule Salv 1987 1988 - Sep lastSun 0:00 0 S
+# There are too many San Salvadors elsewhere, so use America/El_Salvador
+# instead of America/San_Salvador.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador
+ -6:00 Salv C%sT
+
+# Grenada
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Grenada -4:07:00 - LMT 1911 Jul # St George's
+ -4:00 - AST
+
+# Guadeloupe
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Guadeloupe -4:06:08 - LMT 1911 Jun 8 # Pointe a Pitre
+ -4:00 - AST
+# St Barthelemy
+Link America/Guadeloupe America/St_Barthelemy
+# St Martin (French part)
+Link America/Guadeloupe America/Marigot
+
+# Guatemala
+#
+# From Gwillim Law (2006-04-22), after a heads-up from Oscar van Vlijmen:
+# Diario Co Latino, at
+# http://www.diariocolatino.com/internacionales/detalles.asp?NewsID=8079,
+# says in an article dated 2006-04-19 that the Guatemalan government had
+# decided on that date to advance official time by 60 minutes, to lessen the
+# impact of the elevated cost of oil.... Daylight saving time will last from
+# 2006-04-29 24:00 (Guatemalan standard time) to 2006-09-30 (time unspecified).
+# From Paul Eggert (2006-06-22):
+# The Ministry of Energy and Mines, press release CP-15/2006
+# (2006-04-19), says DST ends at 24:00. See
+# <http://www.sieca.org.gt/Sitio_publico/Energeticos/Doc/Medidas/Cambio_Horario_Nac_190406.pdf>.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Guat 1973 only - Nov 25 0:00 1:00 D
+Rule Guat 1974 only - Feb 24 0:00 0 S
+Rule Guat 1983 only - May 21 0:00 1:00 D
+Rule Guat 1983 only - Sep 22 0:00 0 S
+Rule Guat 1991 only - Mar 23 0:00 1:00 D
+Rule Guat 1991 only - Sep 7 0:00 0 S
+Rule Guat 2006 only - Apr 30 0:00 1:00 D
+Rule Guat 2006 only - Oct 1 0:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Guatemala -6:02:04 - LMT 1918 Oct 5
+ -6:00 Guat C%sT
+
+# Haiti
+# From Gwillim Law (2005-04-15):
+# Risto O. Nykanen wrote me that Haiti is now on DST.
+# I searched for confirmation, and I found a
+# <a href="http://www.haitianconsulate.org/time.doc"> press release
+# on the Web page of the Haitian Consulate in Chicago (2005-03-31),
+# </a>. Translated from French, it says:
+#
+# "The Prime Minister's Communication Office notifies the public in general
+# and the press in particular that, following a decision of the Interior
+# Ministry and the Territorial Collectivities [I suppose that means the
+# provinces], Haiti will move to Eastern Daylight Time in the night from next
+# Saturday the 2nd to Sunday the 3rd.
+#
+# "Consequently, the Prime Minister's Communication Office wishes to inform
+# the population that the country's clocks will be set forward one hour
+# starting at midnight. This provision will hold until the last Saturday in
+# October 2005.
+#
+# "Port-au-Prince, March 31, 2005"
+#
+# From Steffen Thorsen (2006-04-04):
+# I have been informed by users that Haiti observes DST this year like
+# last year, so the current "only" rule for 2005 might be changed to a
+# "max" rule or to last until 2006. (Who knows if they will observe DST
+# next year or if they will extend their DST like US/Canada next year).
+#
+# I have found this article about it (in French):
+# http://www.haitipressnetwork.com/news.cfm?articleID=7612
+#
+# The reason seems to be an energy crisis.
+
+# From Stephen Colebourne (2007-02-22):
+# Some IATA info: Haiti won't be having DST in 2007.
+
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Haiti 1983 only - May 8 0:00 1:00 D
+Rule Haiti 1984 1987 - Apr lastSun 0:00 1:00 D
+Rule Haiti 1983 1987 - Oct lastSun 0:00 0 S
+# Shanks & Pottenger say AT is 2:00, but IATA SSIM (1991/1997) says 1:00s.
+# Go with IATA.
+Rule Haiti 1988 1997 - Apr Sun>=1 1:00s 1:00 D
+Rule Haiti 1988 1997 - Oct lastSun 1:00s 0 S
+Rule Haiti 2005 2006 - Apr Sun>=1 0:00 1:00 D
+Rule Haiti 2005 2006 - Oct lastSun 0:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Port-au-Prince -4:49:20 - LMT 1890
+ -4:49 - PPMT 1917 Jan 24 12:00 # P-a-P MT
+ -5:00 Haiti E%sT
+
+# Honduras
+# Shanks & Pottenger say 1921 Jan 1; go with Whitman's more precise Apr 1.
+
+# From Paul Eggert (2006-05-05):
+# worldtimezone.com reports a 2006-05-02 Spanish-language AP article
+# saying Honduras will start using DST midnight Saturday, effective 4
+# months until September. La Tribuna reported today
+# <http://www.latribuna.hn/99299.html> that Manuel Zelaya, the president
+# of Honduras, refused to back down on this.
+
+# From Jesper Norgaard Welen (2006-08-08):
+# It seems that Honduras has returned from DST to standard time this Monday at
+# 00:00 hours (prolonging Sunday to 25 hours duration).
+# http://www.worldtimezone.com/dst_news/dst_news_honduras04.html
+
+# From Paul Eggert (2006-08-08):
+# Also see Diario El Heraldo, The country returns to standard time (2006-08-08)
+# <http://www.elheraldo.hn/nota.php?nid=54941&sec=12>.
+# It mentions executive decree 18-2006.
+
+# From Steffen Thorsen (2006-08-17):
+# Honduras will observe DST from 2007 to 2009, exact dates are not
+# published, I have located this authoritative source:
+# http://www.presidencia.gob.hn/noticia.aspx?nId=47
+
+# From Steffen Thorsen (2007-03-30):
+# http://www.laprensahn.com/pais_nota.php?id04962=7386
+# So it seems that Honduras will not enter DST this year....
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Hond 1987 1988 - May Sun>=1 0:00 1:00 D
+Rule Hond 1987 1988 - Sep lastSun 0:00 0 S
+Rule Hond 2006 only - May Sun>=1 0:00 1:00 D
+Rule Hond 2006 only - Aug Mon>=1 0:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Tegucigalpa -5:48:52 - LMT 1921 Apr
+ -6:00 Hond C%sT
+#
+# Great Swan I ceded by US to Honduras in 1972
+
+# Jamaica
+
+# From Bob Devine (1988-01-28):
+# Follows US rules.
+
+# From U. S. Naval Observatory (1989-01-19):
+# JAMAICA 5 H BEHIND UTC
+
+# From Shanks & Pottenger:
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Jamaica -5:07:12 - LMT 1890 # Kingston
+ -5:07:12 - KMT 1912 Feb # Kingston Mean Time
+ -5:00 - EST 1974 Apr 28 2:00
+ -5:00 US E%sT 1984
+ -5:00 - EST
+
+# Martinique
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France
+ -4:04:20 - FFMT 1911 May # Fort-de-France MT
+ -4:00 - AST 1980 Apr 6
+ -4:00 1:00 ADT 1980 Sep 28
+ -4:00 - AST
+
+# Montserrat
+# From Paul Eggert (2006-03-22):
+# In 1995 volcanic eruptions forced evacuation of Plymouth, the capital.
+# world.gazetteer.com says Cork Hill is the most populous location now.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Montserrat -4:08:52 - LMT 1911 Jul 1 0:01 # Cork Hill
+ -4:00 - AST
+
+# Nicaragua
+#
+# This uses Shanks & Pottenger for times before 2005.
+#
+# From Steffen Thorsen (2005-04-12):
+# I've got reports from 8 different people that Nicaragua just started
+# DST on Sunday 2005-04-10, in order to save energy because of
+# expensive petroleum. The exact end date for DST is not yet
+# announced, only "September" but some sites also say "mid-September".
+# Some background information is available on the President's official site:
+# http://www.presidencia.gob.ni/Presidencia/Files_index/Secretaria/Notas%20de%20Prensa/Presidente/2005/ABRIL/Gobierno-de-nicaragua-adelanta-hora-oficial-06abril.htm
+# The Decree, no 23-2005 is available here:
+# http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2005/Decreto%2023-2005%20Se%20adelanta%20en%20una%20hora%20en%20todo%20el%20territorio%20nacional%20apartir%20de%20las%2024horas%20del%2009%20de%20Abril.pdf
+#
+# From Paul Eggert (2005-05-01):
+# The decree doesn't say anything about daylight saving, but for now let's
+# assume that it is daylight saving....
+#
+# From Gwillim Law (2005-04-21):
+# The Associated Press story on the time change, which can be found at
+# http://www.lapalmainteractivo.com/guias/content/gen/ap/America_Latina/AMC_GEN_NICARAGUA_HORA.html
+# and elsewhere, says (fifth paragraph, translated from Spanish): "The last
+# time that a change of clocks was applied to save energy was in the year 2000
+# during the Arnoldo Aleman administration."...
+# The northamerica file says that Nicaragua has been on UTC-6 continuously
+# since December 1998. I wasn't able to find any details of Nicaraguan time
+# changes in 2000. Perhaps a note could be added to the northamerica file, to
+# the effect that we have indirect evidence that DST was observed in 2000.
+#
+# From Jesper Norgaard Welen (2005-11-02):
+# Nicaragua left DST the 2005-10-02 at 00:00 (local time).
+# http://www.presidencia.gob.ni/presidencia/files_index/secretaria/comunicados/2005/septiembre/26septiembre-cambio-hora.htm
+# (2005-09-26)
+#
+# From Jesper Norgaard Welen (2006-05-05):
+# http://www.elnuevodiario.com.ni/2006/05/01/nacionales/18410
+# (my informal translation)
+# By order of the president of the republic, Enrique Bolanos, Nicaragua
+# advanced by sixty minutes their official time, yesterday at 2 in the
+# morning, and will stay that way until 30.th. of september.
+#
+# From Jesper Norgaard Welen (2006-09-30):
+# http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2006/D-063-2006P-PRN-Cambio-Hora.pdf
+# My informal translation runs:
+# The natural sun time is restored in all the national territory, in that the
+# time is returned one hour at 01:00 am of October 1 of 2006.
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Nic 1979 1980 - Mar Sun>=16 0:00 1:00 D
+Rule Nic 1979 1980 - Jun Mon>=23 0:00 0 S
+Rule Nic 2005 only - Apr 10 0:00 1:00 D
+Rule Nic 2005 only - Oct Sun>=1 0:00 0 S
+Rule Nic 2006 only - Apr 30 2:00 1:00 D
+Rule Nic 2006 only - Oct Sun>=1 1:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Managua -5:45:08 - LMT 1890
+ -5:45:12 - MMT 1934 Jun 23 # Managua Mean Time?
+ -6:00 - CST 1973 May
+ -5:00 - EST 1975 Feb 16
+ -6:00 Nic C%sT 1992 Jan 1 4:00
+ -5:00 - EST 1992 Sep 24
+ -6:00 - CST 1993
+ -5:00 - EST 1997
+ -6:00 Nic C%sT
+
+# Panama
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Panama -5:18:08 - LMT 1890
+ -5:19:36 - CMT 1908 Apr 22 # Colon Mean Time
+ -5:00 - EST
+
+# Puerto Rico
+# There are too many San Juans elsewhere, so we'll use `Puerto_Rico'.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan
+ -4:00 - AST 1942 May 3
+ -4:00 US A%sT 1946
+ -4:00 - AST
+
+# St Kitts-Nevis
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/St_Kitts -4:10:52 - LMT 1912 Mar 2 # Basseterre
+ -4:00 - AST
+
+# St Lucia
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/St_Lucia -4:04:00 - LMT 1890 # Castries
+ -4:04:00 - CMT 1912 # Castries Mean Time
+ -4:00 - AST
+
+# St Pierre and Miquelon
+# There are too many St Pierres elsewhere, so we'll use `Miquelon'.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre
+ -4:00 - AST 1980 May
+ -3:00 - PMST 1987 # Pierre & Miquelon Time
+ -3:00 Canada PM%sT
+
+# St Vincent and the Grenadines
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/St_Vincent -4:04:56 - LMT 1890 # Kingstown
+ -4:04:56 - KMT 1912 # Kingstown Mean Time
+ -4:00 - AST
+
+# Turks and Caicos
+#
+# From Chris Dunn in
+# <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007>
+# (2007-03-15): In the Turks & Caicos Islands (America/Grand_Turk) the
+# daylight saving dates for time changes have been adjusted to match
+# the recent U.S. change of dates.
+#
+# From Brian Inglis (2007-04-28):
+# http://www.turksandcaicos.tc/calendar/index.htm [2007-04-26]
+# there is an entry for Nov 4 "Daylight Savings Time Ends 2007" and three
+# rows before that there is an out of date entry for Oct:
+# "Eastern Standard Times Begins 2007
+# Clocks are set back one hour at 2:00 a.m. local Daylight Saving Time"
+# indicating that the normal ET rules are followed.
+#
+# From Paul Eggert (2006-05-01):
+# Shanks & Pottenger say they use US DST rules, but IATA SSIM (1991/1998)
+# says they switch at midnight. Go with Shanks & Pottenger.
+#
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule TC 1979 1986 - Apr lastSun 2:00 1:00 D
+Rule TC 1979 2006 - Oct lastSun 2:00 0 S
+Rule TC 1987 2006 - Apr Sun>=1 2:00 1:00 D
+Rule TC 2007 max - Mar Sun>=8 2:00 1:00 D
+Rule TC 2007 max - Nov Sun>=1 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Grand_Turk -4:44:32 - LMT 1890
+ -5:07:12 - KMT 1912 Feb # Kingston Mean Time
+ -5:00 TC E%sT
+
+# British Virgin Is
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Tortola -4:18:28 - LMT 1911 Jul # Road Town
+ -4:00 - AST
+
+# Virgin Is
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/St_Thomas -4:19:44 - LMT 1911 Jul # Charlotte Amalie
+ -4:00 - AST
diff --git a/tools/zoneinfo/tzdata2009s/pacificnew b/tools/zoneinfo/tzdata2009s/pacificnew
new file mode 100644
index 0000000..e2512c1
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/pacificnew
@@ -0,0 +1,29 @@
+# <pre>
+# @(#)pacificnew 8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# From Arthur David Olson (1989-04-05):
+# On 1989-04-05, the U. S. House of Representatives passed (238-154) a bill
+# establishing "Pacific Presidential Election Time"; it was not acted on
+# by the Senate or signed into law by the President.
+# You might want to change the "PE" (Presidential Election) below to
+# "Q" (Quadrennial) to maintain three-character zone abbreviations.
+# If you're really conservative, you might want to change it to "D".
+# Avoid "L" (Leap Year), which won't be true in 2100.
+
+# If Presidential Election Time is ever established, replace "XXXX" below
+# with the year the law takes effect and uncomment the "##" lines.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+## Rule Twilite XXXX max - Apr Sun>=1 2:00 1:00 D
+## Rule Twilite XXXX max uspres Oct lastSun 2:00 1:00 PE
+## Rule Twilite XXXX max uspres Nov Sun>=7 2:00 0 S
+## Rule Twilite XXXX max nonpres Oct lastSun 2:00 0 S
+
+# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
+## Zone America/Los_Angeles-PET -8:00 US P%sT XXXX
+## -8:00 Twilite P%sT
+
+# For now...
+Link America/Los_Angeles US/Pacific-New ##
diff --git a/tools/zoneinfo/tzdata2009s/solar87 b/tools/zoneinfo/tzdata2009s/solar87
new file mode 100644
index 0000000..47ee7e7
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/solar87
@@ -0,0 +1,391 @@
+# <pre>
+# @(#)solar87 8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# So much for footnotes about Saudi Arabia.
+# Apparent noon times below are for Riyadh; your mileage will vary.
+# Times were computed using formulas in the U.S. Naval Observatory's
+# Almanac for Computers 1987; the formulas "will give EqT to an accuracy of
+# [plus or minus two] seconds during the current year."
+#
+# Rounding to the nearest five seconds results in fewer than
+# 256 different "time types"--a limit that's faced because time types are
+# stored on disk as unsigned chars.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule sol87 1987 only - Jan 1 12:03:20s -0:03:20 -
+Rule sol87 1987 only - Jan 2 12:03:50s -0:03:50 -
+Rule sol87 1987 only - Jan 3 12:04:15s -0:04:15 -
+Rule sol87 1987 only - Jan 4 12:04:45s -0:04:45 -
+Rule sol87 1987 only - Jan 5 12:05:10s -0:05:10 -
+Rule sol87 1987 only - Jan 6 12:05:40s -0:05:40 -
+Rule sol87 1987 only - Jan 7 12:06:05s -0:06:05 -
+Rule sol87 1987 only - Jan 8 12:06:30s -0:06:30 -
+Rule sol87 1987 only - Jan 9 12:06:55s -0:06:55 -
+Rule sol87 1987 only - Jan 10 12:07:20s -0:07:20 -
+Rule sol87 1987 only - Jan 11 12:07:45s -0:07:45 -
+Rule sol87 1987 only - Jan 12 12:08:10s -0:08:10 -
+Rule sol87 1987 only - Jan 13 12:08:30s -0:08:30 -
+Rule sol87 1987 only - Jan 14 12:08:55s -0:08:55 -
+Rule sol87 1987 only - Jan 15 12:09:15s -0:09:15 -
+Rule sol87 1987 only - Jan 16 12:09:35s -0:09:35 -
+Rule sol87 1987 only - Jan 17 12:09:55s -0:09:55 -
+Rule sol87 1987 only - Jan 18 12:10:15s -0:10:15 -
+Rule sol87 1987 only - Jan 19 12:10:35s -0:10:35 -
+Rule sol87 1987 only - Jan 20 12:10:55s -0:10:55 -
+Rule sol87 1987 only - Jan 21 12:11:10s -0:11:10 -
+Rule sol87 1987 only - Jan 22 12:11:30s -0:11:30 -
+Rule sol87 1987 only - Jan 23 12:11:45s -0:11:45 -
+Rule sol87 1987 only - Jan 24 12:12:00s -0:12:00 -
+Rule sol87 1987 only - Jan 25 12:12:15s -0:12:15 -
+Rule sol87 1987 only - Jan 26 12:12:30s -0:12:30 -
+Rule sol87 1987 only - Jan 27 12:12:40s -0:12:40 -
+Rule sol87 1987 only - Jan 28 12:12:55s -0:12:55 -
+Rule sol87 1987 only - Jan 29 12:13:05s -0:13:05 -
+Rule sol87 1987 only - Jan 30 12:13:15s -0:13:15 -
+Rule sol87 1987 only - Jan 31 12:13:25s -0:13:25 -
+Rule sol87 1987 only - Feb 1 12:13:35s -0:13:35 -
+Rule sol87 1987 only - Feb 2 12:13:40s -0:13:40 -
+Rule sol87 1987 only - Feb 3 12:13:50s -0:13:50 -
+Rule sol87 1987 only - Feb 4 12:13:55s -0:13:55 -
+Rule sol87 1987 only - Feb 5 12:14:00s -0:14:00 -
+Rule sol87 1987 only - Feb 6 12:14:05s -0:14:05 -
+Rule sol87 1987 only - Feb 7 12:14:10s -0:14:10 -
+Rule sol87 1987 only - Feb 8 12:14:10s -0:14:10 -
+Rule sol87 1987 only - Feb 9 12:14:15s -0:14:15 -
+Rule sol87 1987 only - Feb 10 12:14:15s -0:14:15 -
+Rule sol87 1987 only - Feb 11 12:14:15s -0:14:15 -
+Rule sol87 1987 only - Feb 12 12:14:15s -0:14:15 -
+Rule sol87 1987 only - Feb 13 12:14:15s -0:14:15 -
+Rule sol87 1987 only - Feb 14 12:14:15s -0:14:15 -
+Rule sol87 1987 only - Feb 15 12:14:10s -0:14:10 -
+Rule sol87 1987 only - Feb 16 12:14:10s -0:14:10 -
+Rule sol87 1987 only - Feb 17 12:14:05s -0:14:05 -
+Rule sol87 1987 only - Feb 18 12:14:00s -0:14:00 -
+Rule sol87 1987 only - Feb 19 12:13:55s -0:13:55 -
+Rule sol87 1987 only - Feb 20 12:13:50s -0:13:50 -
+Rule sol87 1987 only - Feb 21 12:13:45s -0:13:45 -
+Rule sol87 1987 only - Feb 22 12:13:35s -0:13:35 -
+Rule sol87 1987 only - Feb 23 12:13:30s -0:13:30 -
+Rule sol87 1987 only - Feb 24 12:13:20s -0:13:20 -
+Rule sol87 1987 only - Feb 25 12:13:10s -0:13:10 -
+Rule sol87 1987 only - Feb 26 12:13:00s -0:13:00 -
+Rule sol87 1987 only - Feb 27 12:12:50s -0:12:50 -
+Rule sol87 1987 only - Feb 28 12:12:40s -0:12:40 -
+Rule sol87 1987 only - Mar 1 12:12:30s -0:12:30 -
+Rule sol87 1987 only - Mar 2 12:12:20s -0:12:20 -
+Rule sol87 1987 only - Mar 3 12:12:05s -0:12:05 -
+Rule sol87 1987 only - Mar 4 12:11:55s -0:11:55 -
+Rule sol87 1987 only - Mar 5 12:11:40s -0:11:40 -
+Rule sol87 1987 only - Mar 6 12:11:25s -0:11:25 -
+Rule sol87 1987 only - Mar 7 12:11:15s -0:11:15 -
+Rule sol87 1987 only - Mar 8 12:11:00s -0:11:00 -
+Rule sol87 1987 only - Mar 9 12:10:45s -0:10:45 -
+Rule sol87 1987 only - Mar 10 12:10:30s -0:10:30 -
+Rule sol87 1987 only - Mar 11 12:10:15s -0:10:15 -
+Rule sol87 1987 only - Mar 12 12:09:55s -0:09:55 -
+Rule sol87 1987 only - Mar 13 12:09:40s -0:09:40 -
+Rule sol87 1987 only - Mar 14 12:09:25s -0:09:25 -
+Rule sol87 1987 only - Mar 15 12:09:10s -0:09:10 -
+Rule sol87 1987 only - Mar 16 12:08:50s -0:08:50 -
+Rule sol87 1987 only - Mar 17 12:08:35s -0:08:35 -
+Rule sol87 1987 only - Mar 18 12:08:15s -0:08:15 -
+Rule sol87 1987 only - Mar 19 12:08:00s -0:08:00 -
+Rule sol87 1987 only - Mar 20 12:07:40s -0:07:40 -
+Rule sol87 1987 only - Mar 21 12:07:25s -0:07:25 -
+Rule sol87 1987 only - Mar 22 12:07:05s -0:07:05 -
+Rule sol87 1987 only - Mar 23 12:06:50s -0:06:50 -
+Rule sol87 1987 only - Mar 24 12:06:30s -0:06:30 -
+Rule sol87 1987 only - Mar 25 12:06:10s -0:06:10 -
+Rule sol87 1987 only - Mar 26 12:05:55s -0:05:55 -
+Rule sol87 1987 only - Mar 27 12:05:35s -0:05:35 -
+Rule sol87 1987 only - Mar 28 12:05:15s -0:05:15 -
+Rule sol87 1987 only - Mar 29 12:05:00s -0:05:00 -
+Rule sol87 1987 only - Mar 30 12:04:40s -0:04:40 -
+Rule sol87 1987 only - Mar 31 12:04:25s -0:04:25 -
+Rule sol87 1987 only - Apr 1 12:04:05s -0:04:05 -
+Rule sol87 1987 only - Apr 2 12:03:45s -0:03:45 -
+Rule sol87 1987 only - Apr 3 12:03:30s -0:03:30 -
+Rule sol87 1987 only - Apr 4 12:03:10s -0:03:10 -
+Rule sol87 1987 only - Apr 5 12:02:55s -0:02:55 -
+Rule sol87 1987 only - Apr 6 12:02:35s -0:02:35 -
+Rule sol87 1987 only - Apr 7 12:02:20s -0:02:20 -
+Rule sol87 1987 only - Apr 8 12:02:05s -0:02:05 -
+Rule sol87 1987 only - Apr 9 12:01:45s -0:01:45 -
+Rule sol87 1987 only - Apr 10 12:01:30s -0:01:30 -
+Rule sol87 1987 only - Apr 11 12:01:15s -0:01:15 -
+Rule sol87 1987 only - Apr 12 12:00:55s -0:00:55 -
+Rule sol87 1987 only - Apr 13 12:00:40s -0:00:40 -
+Rule sol87 1987 only - Apr 14 12:00:25s -0:00:25 -
+Rule sol87 1987 only - Apr 15 12:00:10s -0:00:10 -
+Rule sol87 1987 only - Apr 16 11:59:55s 0:00:05 -
+Rule sol87 1987 only - Apr 17 11:59:45s 0:00:15 -
+Rule sol87 1987 only - Apr 18 11:59:30s 0:00:30 -
+Rule sol87 1987 only - Apr 19 11:59:15s 0:00:45 -
+Rule sol87 1987 only - Apr 20 11:59:05s 0:00:55 -
+Rule sol87 1987 only - Apr 21 11:58:50s 0:01:10 -
+Rule sol87 1987 only - Apr 22 11:58:40s 0:01:20 -
+Rule sol87 1987 only - Apr 23 11:58:25s 0:01:35 -
+Rule sol87 1987 only - Apr 24 11:58:15s 0:01:45 -
+Rule sol87 1987 only - Apr 25 11:58:05s 0:01:55 -
+Rule sol87 1987 only - Apr 26 11:57:55s 0:02:05 -
+Rule sol87 1987 only - Apr 27 11:57:45s 0:02:15 -
+Rule sol87 1987 only - Apr 28 11:57:35s 0:02:25 -
+Rule sol87 1987 only - Apr 29 11:57:25s 0:02:35 -
+Rule sol87 1987 only - Apr 30 11:57:15s 0:02:45 -
+Rule sol87 1987 only - May 1 11:57:10s 0:02:50 -
+Rule sol87 1987 only - May 2 11:57:00s 0:03:00 -
+Rule sol87 1987 only - May 3 11:56:55s 0:03:05 -
+Rule sol87 1987 only - May 4 11:56:50s 0:03:10 -
+Rule sol87 1987 only - May 5 11:56:45s 0:03:15 -
+Rule sol87 1987 only - May 6 11:56:40s 0:03:20 -
+Rule sol87 1987 only - May 7 11:56:35s 0:03:25 -
+Rule sol87 1987 only - May 8 11:56:30s 0:03:30 -
+Rule sol87 1987 only - May 9 11:56:25s 0:03:35 -
+Rule sol87 1987 only - May 10 11:56:25s 0:03:35 -
+Rule sol87 1987 only - May 11 11:56:20s 0:03:40 -
+Rule sol87 1987 only - May 12 11:56:20s 0:03:40 -
+Rule sol87 1987 only - May 13 11:56:20s 0:03:40 -
+Rule sol87 1987 only - May 14 11:56:20s 0:03:40 -
+Rule sol87 1987 only - May 15 11:56:20s 0:03:40 -
+Rule sol87 1987 only - May 16 11:56:20s 0:03:40 -
+Rule sol87 1987 only - May 17 11:56:20s 0:03:40 -
+Rule sol87 1987 only - May 18 11:56:20s 0:03:40 -
+Rule sol87 1987 only - May 19 11:56:25s 0:03:35 -
+Rule sol87 1987 only - May 20 11:56:25s 0:03:35 -
+Rule sol87 1987 only - May 21 11:56:30s 0:03:30 -
+Rule sol87 1987 only - May 22 11:56:35s 0:03:25 -
+Rule sol87 1987 only - May 23 11:56:40s 0:03:20 -
+Rule sol87 1987 only - May 24 11:56:45s 0:03:15 -
+Rule sol87 1987 only - May 25 11:56:50s 0:03:10 -
+Rule sol87 1987 only - May 26 11:56:55s 0:03:05 -
+Rule sol87 1987 only - May 27 11:57:00s 0:03:00 -
+Rule sol87 1987 only - May 28 11:57:10s 0:02:50 -
+Rule sol87 1987 only - May 29 11:57:15s 0:02:45 -
+Rule sol87 1987 only - May 30 11:57:25s 0:02:35 -
+Rule sol87 1987 only - May 31 11:57:30s 0:02:30 -
+Rule sol87 1987 only - Jun 1 11:57:40s 0:02:20 -
+Rule sol87 1987 only - Jun 2 11:57:50s 0:02:10 -
+Rule sol87 1987 only - Jun 3 11:58:00s 0:02:00 -
+Rule sol87 1987 only - Jun 4 11:58:10s 0:01:50 -
+Rule sol87 1987 only - Jun 5 11:58:20s 0:01:40 -
+Rule sol87 1987 only - Jun 6 11:58:30s 0:01:30 -
+Rule sol87 1987 only - Jun 7 11:58:40s 0:01:20 -
+Rule sol87 1987 only - Jun 8 11:58:50s 0:01:10 -
+Rule sol87 1987 only - Jun 9 11:59:05s 0:00:55 -
+Rule sol87 1987 only - Jun 10 11:59:15s 0:00:45 -
+Rule sol87 1987 only - Jun 11 11:59:30s 0:00:30 -
+Rule sol87 1987 only - Jun 12 11:59:40s 0:00:20 -
+Rule sol87 1987 only - Jun 13 11:59:50s 0:00:10 -
+Rule sol87 1987 only - Jun 14 12:00:05s -0:00:05 -
+Rule sol87 1987 only - Jun 15 12:00:15s -0:00:15 -
+Rule sol87 1987 only - Jun 16 12:00:30s -0:00:30 -
+Rule sol87 1987 only - Jun 17 12:00:45s -0:00:45 -
+Rule sol87 1987 only - Jun 18 12:00:55s -0:00:55 -
+Rule sol87 1987 only - Jun 19 12:01:10s -0:01:10 -
+Rule sol87 1987 only - Jun 20 12:01:20s -0:01:20 -
+Rule sol87 1987 only - Jun 21 12:01:35s -0:01:35 -
+Rule sol87 1987 only - Jun 22 12:01:50s -0:01:50 -
+Rule sol87 1987 only - Jun 23 12:02:00s -0:02:00 -
+Rule sol87 1987 only - Jun 24 12:02:15s -0:02:15 -
+Rule sol87 1987 only - Jun 25 12:02:25s -0:02:25 -
+Rule sol87 1987 only - Jun 26 12:02:40s -0:02:40 -
+Rule sol87 1987 only - Jun 27 12:02:50s -0:02:50 -
+Rule sol87 1987 only - Jun 28 12:03:05s -0:03:05 -
+Rule sol87 1987 only - Jun 29 12:03:15s -0:03:15 -
+Rule sol87 1987 only - Jun 30 12:03:30s -0:03:30 -
+Rule sol87 1987 only - Jul 1 12:03:40s -0:03:40 -
+Rule sol87 1987 only - Jul 2 12:03:50s -0:03:50 -
+Rule sol87 1987 only - Jul 3 12:04:05s -0:04:05 -
+Rule sol87 1987 only - Jul 4 12:04:15s -0:04:15 -
+Rule sol87 1987 only - Jul 5 12:04:25s -0:04:25 -
+Rule sol87 1987 only - Jul 6 12:04:35s -0:04:35 -
+Rule sol87 1987 only - Jul 7 12:04:45s -0:04:45 -
+Rule sol87 1987 only - Jul 8 12:04:55s -0:04:55 -
+Rule sol87 1987 only - Jul 9 12:05:05s -0:05:05 -
+Rule sol87 1987 only - Jul 10 12:05:15s -0:05:15 -
+Rule sol87 1987 only - Jul 11 12:05:20s -0:05:20 -
+Rule sol87 1987 only - Jul 12 12:05:30s -0:05:30 -
+Rule sol87 1987 only - Jul 13 12:05:40s -0:05:40 -
+Rule sol87 1987 only - Jul 14 12:05:45s -0:05:45 -
+Rule sol87 1987 only - Jul 15 12:05:50s -0:05:50 -
+Rule sol87 1987 only - Jul 16 12:06:00s -0:06:00 -
+Rule sol87 1987 only - Jul 17 12:06:05s -0:06:05 -
+Rule sol87 1987 only - Jul 18 12:06:10s -0:06:10 -
+Rule sol87 1987 only - Jul 19 12:06:15s -0:06:15 -
+Rule sol87 1987 only - Jul 20 12:06:15s -0:06:15 -
+Rule sol87 1987 only - Jul 21 12:06:20s -0:06:20 -
+Rule sol87 1987 only - Jul 22 12:06:25s -0:06:25 -
+Rule sol87 1987 only - Jul 23 12:06:25s -0:06:25 -
+Rule sol87 1987 only - Jul 24 12:06:25s -0:06:25 -
+Rule sol87 1987 only - Jul 25 12:06:30s -0:06:30 -
+Rule sol87 1987 only - Jul 26 12:06:30s -0:06:30 -
+Rule sol87 1987 only - Jul 27 12:06:30s -0:06:30 -
+Rule sol87 1987 only - Jul 28 12:06:30s -0:06:30 -
+Rule sol87 1987 only - Jul 29 12:06:25s -0:06:25 -
+Rule sol87 1987 only - Jul 30 12:06:25s -0:06:25 -
+Rule sol87 1987 only - Jul 31 12:06:25s -0:06:25 -
+Rule sol87 1987 only - Aug 1 12:06:20s -0:06:20 -
+Rule sol87 1987 only - Aug 2 12:06:15s -0:06:15 -
+Rule sol87 1987 only - Aug 3 12:06:10s -0:06:10 -
+Rule sol87 1987 only - Aug 4 12:06:05s -0:06:05 -
+Rule sol87 1987 only - Aug 5 12:06:00s -0:06:00 -
+Rule sol87 1987 only - Aug 6 12:05:55s -0:05:55 -
+Rule sol87 1987 only - Aug 7 12:05:50s -0:05:50 -
+Rule sol87 1987 only - Aug 8 12:05:40s -0:05:40 -
+Rule sol87 1987 only - Aug 9 12:05:35s -0:05:35 -
+Rule sol87 1987 only - Aug 10 12:05:25s -0:05:25 -
+Rule sol87 1987 only - Aug 11 12:05:15s -0:05:15 -
+Rule sol87 1987 only - Aug 12 12:05:05s -0:05:05 -
+Rule sol87 1987 only - Aug 13 12:04:55s -0:04:55 -
+Rule sol87 1987 only - Aug 14 12:04:45s -0:04:45 -
+Rule sol87 1987 only - Aug 15 12:04:35s -0:04:35 -
+Rule sol87 1987 only - Aug 16 12:04:25s -0:04:25 -
+Rule sol87 1987 only - Aug 17 12:04:10s -0:04:10 -
+Rule sol87 1987 only - Aug 18 12:04:00s -0:04:00 -
+Rule sol87 1987 only - Aug 19 12:03:45s -0:03:45 -
+Rule sol87 1987 only - Aug 20 12:03:30s -0:03:30 -
+Rule sol87 1987 only - Aug 21 12:03:15s -0:03:15 -
+Rule sol87 1987 only - Aug 22 12:03:00s -0:03:00 -
+Rule sol87 1987 only - Aug 23 12:02:45s -0:02:45 -
+Rule sol87 1987 only - Aug 24 12:02:30s -0:02:30 -
+Rule sol87 1987 only - Aug 25 12:02:15s -0:02:15 -
+Rule sol87 1987 only - Aug 26 12:02:00s -0:02:00 -
+Rule sol87 1987 only - Aug 27 12:01:40s -0:01:40 -
+Rule sol87 1987 only - Aug 28 12:01:25s -0:01:25 -
+Rule sol87 1987 only - Aug 29 12:01:05s -0:01:05 -
+Rule sol87 1987 only - Aug 30 12:00:50s -0:00:50 -
+Rule sol87 1987 only - Aug 31 12:00:30s -0:00:30 -
+Rule sol87 1987 only - Sep 1 12:00:10s -0:00:10 -
+Rule sol87 1987 only - Sep 2 11:59:50s 0:00:10 -
+Rule sol87 1987 only - Sep 3 11:59:35s 0:00:25 -
+Rule sol87 1987 only - Sep 4 11:59:15s 0:00:45 -
+Rule sol87 1987 only - Sep 5 11:58:55s 0:01:05 -
+Rule sol87 1987 only - Sep 6 11:58:35s 0:01:25 -
+Rule sol87 1987 only - Sep 7 11:58:15s 0:01:45 -
+Rule sol87 1987 only - Sep 8 11:57:55s 0:02:05 -
+Rule sol87 1987 only - Sep 9 11:57:30s 0:02:30 -
+Rule sol87 1987 only - Sep 10 11:57:10s 0:02:50 -
+Rule sol87 1987 only - Sep 11 11:56:50s 0:03:10 -
+Rule sol87 1987 only - Sep 12 11:56:30s 0:03:30 -
+Rule sol87 1987 only - Sep 13 11:56:10s 0:03:50 -
+Rule sol87 1987 only - Sep 14 11:55:45s 0:04:15 -
+Rule sol87 1987 only - Sep 15 11:55:25s 0:04:35 -
+Rule sol87 1987 only - Sep 16 11:55:05s 0:04:55 -
+Rule sol87 1987 only - Sep 17 11:54:45s 0:05:15 -
+Rule sol87 1987 only - Sep 18 11:54:20s 0:05:40 -
+Rule sol87 1987 only - Sep 19 11:54:00s 0:06:00 -
+Rule sol87 1987 only - Sep 20 11:53:40s 0:06:20 -
+Rule sol87 1987 only - Sep 21 11:53:15s 0:06:45 -
+Rule sol87 1987 only - Sep 22 11:52:55s 0:07:05 -
+Rule sol87 1987 only - Sep 23 11:52:35s 0:07:25 -
+Rule sol87 1987 only - Sep 24 11:52:15s 0:07:45 -
+Rule sol87 1987 only - Sep 25 11:51:55s 0:08:05 -
+Rule sol87 1987 only - Sep 26 11:51:35s 0:08:25 -
+Rule sol87 1987 only - Sep 27 11:51:10s 0:08:50 -
+Rule sol87 1987 only - Sep 28 11:50:50s 0:09:10 -
+Rule sol87 1987 only - Sep 29 11:50:30s 0:09:30 -
+Rule sol87 1987 only - Sep 30 11:50:10s 0:09:50 -
+Rule sol87 1987 only - Oct 1 11:49:50s 0:10:10 -
+Rule sol87 1987 only - Oct 2 11:49:35s 0:10:25 -
+Rule sol87 1987 only - Oct 3 11:49:15s 0:10:45 -
+Rule sol87 1987 only - Oct 4 11:48:55s 0:11:05 -
+Rule sol87 1987 only - Oct 5 11:48:35s 0:11:25 -
+Rule sol87 1987 only - Oct 6 11:48:20s 0:11:40 -
+Rule sol87 1987 only - Oct 7 11:48:00s 0:12:00 -
+Rule sol87 1987 only - Oct 8 11:47:45s 0:12:15 -
+Rule sol87 1987 only - Oct 9 11:47:25s 0:12:35 -
+Rule sol87 1987 only - Oct 10 11:47:10s 0:12:50 -
+Rule sol87 1987 only - Oct 11 11:46:55s 0:13:05 -
+Rule sol87 1987 only - Oct 12 11:46:40s 0:13:20 -
+Rule sol87 1987 only - Oct 13 11:46:25s 0:13:35 -
+Rule sol87 1987 only - Oct 14 11:46:10s 0:13:50 -
+Rule sol87 1987 only - Oct 15 11:45:55s 0:14:05 -
+Rule sol87 1987 only - Oct 16 11:45:45s 0:14:15 -
+Rule sol87 1987 only - Oct 17 11:45:30s 0:14:30 -
+Rule sol87 1987 only - Oct 18 11:45:20s 0:14:40 -
+Rule sol87 1987 only - Oct 19 11:45:05s 0:14:55 -
+Rule sol87 1987 only - Oct 20 11:44:55s 0:15:05 -
+Rule sol87 1987 only - Oct 21 11:44:45s 0:15:15 -
+Rule sol87 1987 only - Oct 22 11:44:35s 0:15:25 -
+Rule sol87 1987 only - Oct 23 11:44:25s 0:15:35 -
+Rule sol87 1987 only - Oct 24 11:44:20s 0:15:40 -
+Rule sol87 1987 only - Oct 25 11:44:10s 0:15:50 -
+Rule sol87 1987 only - Oct 26 11:44:05s 0:15:55 -
+Rule sol87 1987 only - Oct 27 11:43:55s 0:16:05 -
+Rule sol87 1987 only - Oct 28 11:43:50s 0:16:10 -
+Rule sol87 1987 only - Oct 29 11:43:45s 0:16:15 -
+Rule sol87 1987 only - Oct 30 11:43:45s 0:16:15 -
+Rule sol87 1987 only - Oct 31 11:43:40s 0:16:20 -
+Rule sol87 1987 only - Nov 1 11:43:40s 0:16:20 -
+Rule sol87 1987 only - Nov 2 11:43:35s 0:16:25 -
+Rule sol87 1987 only - Nov 3 11:43:35s 0:16:25 -
+Rule sol87 1987 only - Nov 4 11:43:35s 0:16:25 -
+Rule sol87 1987 only - Nov 5 11:43:35s 0:16:25 -
+Rule sol87 1987 only - Nov 6 11:43:40s 0:16:20 -
+Rule sol87 1987 only - Nov 7 11:43:40s 0:16:20 -
+Rule sol87 1987 only - Nov 8 11:43:45s 0:16:15 -
+Rule sol87 1987 only - Nov 9 11:43:50s 0:16:10 -
+Rule sol87 1987 only - Nov 10 11:43:55s 0:16:05 -
+Rule sol87 1987 only - Nov 11 11:44:00s 0:16:00 -
+Rule sol87 1987 only - Nov 12 11:44:05s 0:15:55 -
+Rule sol87 1987 only - Nov 13 11:44:15s 0:15:45 -
+Rule sol87 1987 only - Nov 14 11:44:20s 0:15:40 -
+Rule sol87 1987 only - Nov 15 11:44:30s 0:15:30 -
+Rule sol87 1987 only - Nov 16 11:44:40s 0:15:20 -
+Rule sol87 1987 only - Nov 17 11:44:50s 0:15:10 -
+Rule sol87 1987 only - Nov 18 11:45:05s 0:14:55 -
+Rule sol87 1987 only - Nov 19 11:45:15s 0:14:45 -
+Rule sol87 1987 only - Nov 20 11:45:30s 0:14:30 -
+Rule sol87 1987 only - Nov 21 11:45:45s 0:14:15 -
+Rule sol87 1987 only - Nov 22 11:46:00s 0:14:00 -
+Rule sol87 1987 only - Nov 23 11:46:15s 0:13:45 -
+Rule sol87 1987 only - Nov 24 11:46:30s 0:13:30 -
+Rule sol87 1987 only - Nov 25 11:46:50s 0:13:10 -
+Rule sol87 1987 only - Nov 26 11:47:10s 0:12:50 -
+Rule sol87 1987 only - Nov 27 11:47:25s 0:12:35 -
+Rule sol87 1987 only - Nov 28 11:47:45s 0:12:15 -
+Rule sol87 1987 only - Nov 29 11:48:05s 0:11:55 -
+Rule sol87 1987 only - Nov 30 11:48:30s 0:11:30 -
+Rule sol87 1987 only - Dec 1 11:48:50s 0:11:10 -
+Rule sol87 1987 only - Dec 2 11:49:10s 0:10:50 -
+Rule sol87 1987 only - Dec 3 11:49:35s 0:10:25 -
+Rule sol87 1987 only - Dec 4 11:50:00s 0:10:00 -
+Rule sol87 1987 only - Dec 5 11:50:25s 0:09:35 -
+Rule sol87 1987 only - Dec 6 11:50:50s 0:09:10 -
+Rule sol87 1987 only - Dec 7 11:51:15s 0:08:45 -
+Rule sol87 1987 only - Dec 8 11:51:40s 0:08:20 -
+Rule sol87 1987 only - Dec 9 11:52:05s 0:07:55 -
+Rule sol87 1987 only - Dec 10 11:52:30s 0:07:30 -
+Rule sol87 1987 only - Dec 11 11:53:00s 0:07:00 -
+Rule sol87 1987 only - Dec 12 11:53:25s 0:06:35 -
+Rule sol87 1987 only - Dec 13 11:53:55s 0:06:05 -
+Rule sol87 1987 only - Dec 14 11:54:25s 0:05:35 -
+Rule sol87 1987 only - Dec 15 11:54:50s 0:05:10 -
+Rule sol87 1987 only - Dec 16 11:55:20s 0:04:40 -
+Rule sol87 1987 only - Dec 17 11:55:50s 0:04:10 -
+Rule sol87 1987 only - Dec 18 11:56:20s 0:03:40 -
+Rule sol87 1987 only - Dec 19 11:56:50s 0:03:10 -
+Rule sol87 1987 only - Dec 20 11:57:20s 0:02:40 -
+Rule sol87 1987 only - Dec 21 11:57:50s 0:02:10 -
+Rule sol87 1987 only - Dec 22 11:58:20s 0:01:40 -
+Rule sol87 1987 only - Dec 23 11:58:50s 0:01:10 -
+Rule sol87 1987 only - Dec 24 11:59:20s 0:00:40 -
+Rule sol87 1987 only - Dec 25 11:59:50s 0:00:10 -
+Rule sol87 1987 only - Dec 26 12:00:20s -0:00:20 -
+Rule sol87 1987 only - Dec 27 12:00:45s -0:00:45 -
+Rule sol87 1987 only - Dec 28 12:01:15s -0:01:15 -
+Rule sol87 1987 only - Dec 29 12:01:45s -0:01:45 -
+Rule sol87 1987 only - Dec 30 12:02:15s -0:02:15 -
+Rule sol87 1987 only - Dec 31 12:02:45s -0:02:45 -
+
+# Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs
+# Before and after 1987, we'll operate on local mean solar time.
+
+# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
+Zone Asia/Riyadh87 3:07:04 - zzz 1987
+ 3:07:04 sol87 zzz 1988
+ 3:07:04 - zzz
+# For backward compatibility...
+Link Asia/Riyadh87 Mideast/Riyadh87
diff --git a/tools/zoneinfo/tzdata2009s/solar88 b/tools/zoneinfo/tzdata2009s/solar88
new file mode 100644
index 0000000..8db590e
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/solar88
@@ -0,0 +1,391 @@
+# <pre>
+# @(#)solar88 8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# Apparent noon times below are for Riyadh; they're a bit off for other places.
+# Times were computed using formulas in the U.S. Naval Observatory's
+# Almanac for Computers 1988; the formulas "will give EqT to an accuracy of
+# [plus or minus two] seconds during the current year."
+#
+# Rounding to the nearest five seconds results in fewer than
+# 256 different "time types"--a limit that's faced because time types are
+# stored on disk as unsigned chars.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule sol88 1988 only - Jan 1 12:03:15s -0:03:15 -
+Rule sol88 1988 only - Jan 2 12:03:40s -0:03:40 -
+Rule sol88 1988 only - Jan 3 12:04:10s -0:04:10 -
+Rule sol88 1988 only - Jan 4 12:04:40s -0:04:40 -
+Rule sol88 1988 only - Jan 5 12:05:05s -0:05:05 -
+Rule sol88 1988 only - Jan 6 12:05:30s -0:05:30 -
+Rule sol88 1988 only - Jan 7 12:06:00s -0:06:00 -
+Rule sol88 1988 only - Jan 8 12:06:25s -0:06:25 -
+Rule sol88 1988 only - Jan 9 12:06:50s -0:06:50 -
+Rule sol88 1988 only - Jan 10 12:07:15s -0:07:15 -
+Rule sol88 1988 only - Jan 11 12:07:40s -0:07:40 -
+Rule sol88 1988 only - Jan 12 12:08:05s -0:08:05 -
+Rule sol88 1988 only - Jan 13 12:08:25s -0:08:25 -
+Rule sol88 1988 only - Jan 14 12:08:50s -0:08:50 -
+Rule sol88 1988 only - Jan 15 12:09:10s -0:09:10 -
+Rule sol88 1988 only - Jan 16 12:09:30s -0:09:30 -
+Rule sol88 1988 only - Jan 17 12:09:50s -0:09:50 -
+Rule sol88 1988 only - Jan 18 12:10:10s -0:10:10 -
+Rule sol88 1988 only - Jan 19 12:10:30s -0:10:30 -
+Rule sol88 1988 only - Jan 20 12:10:50s -0:10:50 -
+Rule sol88 1988 only - Jan 21 12:11:05s -0:11:05 -
+Rule sol88 1988 only - Jan 22 12:11:25s -0:11:25 -
+Rule sol88 1988 only - Jan 23 12:11:40s -0:11:40 -
+Rule sol88 1988 only - Jan 24 12:11:55s -0:11:55 -
+Rule sol88 1988 only - Jan 25 12:12:10s -0:12:10 -
+Rule sol88 1988 only - Jan 26 12:12:25s -0:12:25 -
+Rule sol88 1988 only - Jan 27 12:12:40s -0:12:40 -
+Rule sol88 1988 only - Jan 28 12:12:50s -0:12:50 -
+Rule sol88 1988 only - Jan 29 12:13:00s -0:13:00 -
+Rule sol88 1988 only - Jan 30 12:13:10s -0:13:10 -
+Rule sol88 1988 only - Jan 31 12:13:20s -0:13:20 -
+Rule sol88 1988 only - Feb 1 12:13:30s -0:13:30 -
+Rule sol88 1988 only - Feb 2 12:13:40s -0:13:40 -
+Rule sol88 1988 only - Feb 3 12:13:45s -0:13:45 -
+Rule sol88 1988 only - Feb 4 12:13:55s -0:13:55 -
+Rule sol88 1988 only - Feb 5 12:14:00s -0:14:00 -
+Rule sol88 1988 only - Feb 6 12:14:05s -0:14:05 -
+Rule sol88 1988 only - Feb 7 12:14:10s -0:14:10 -
+Rule sol88 1988 only - Feb 8 12:14:10s -0:14:10 -
+Rule sol88 1988 only - Feb 9 12:14:15s -0:14:15 -
+Rule sol88 1988 only - Feb 10 12:14:15s -0:14:15 -
+Rule sol88 1988 only - Feb 11 12:14:15s -0:14:15 -
+Rule sol88 1988 only - Feb 12 12:14:15s -0:14:15 -
+Rule sol88 1988 only - Feb 13 12:14:15s -0:14:15 -
+Rule sol88 1988 only - Feb 14 12:14:15s -0:14:15 -
+Rule sol88 1988 only - Feb 15 12:14:10s -0:14:10 -
+Rule sol88 1988 only - Feb 16 12:14:10s -0:14:10 -
+Rule sol88 1988 only - Feb 17 12:14:05s -0:14:05 -
+Rule sol88 1988 only - Feb 18 12:14:00s -0:14:00 -
+Rule sol88 1988 only - Feb 19 12:13:55s -0:13:55 -
+Rule sol88 1988 only - Feb 20 12:13:50s -0:13:50 -
+Rule sol88 1988 only - Feb 21 12:13:45s -0:13:45 -
+Rule sol88 1988 only - Feb 22 12:13:40s -0:13:40 -
+Rule sol88 1988 only - Feb 23 12:13:30s -0:13:30 -
+Rule sol88 1988 only - Feb 24 12:13:20s -0:13:20 -
+Rule sol88 1988 only - Feb 25 12:13:15s -0:13:15 -
+Rule sol88 1988 only - Feb 26 12:13:05s -0:13:05 -
+Rule sol88 1988 only - Feb 27 12:12:55s -0:12:55 -
+Rule sol88 1988 only - Feb 28 12:12:45s -0:12:45 -
+Rule sol88 1988 only - Feb 29 12:12:30s -0:12:30 -
+Rule sol88 1988 only - Mar 1 12:12:20s -0:12:20 -
+Rule sol88 1988 only - Mar 2 12:12:10s -0:12:10 -
+Rule sol88 1988 only - Mar 3 12:11:55s -0:11:55 -
+Rule sol88 1988 only - Mar 4 12:11:45s -0:11:45 -
+Rule sol88 1988 only - Mar 5 12:11:30s -0:11:30 -
+Rule sol88 1988 only - Mar 6 12:11:15s -0:11:15 -
+Rule sol88 1988 only - Mar 7 12:11:00s -0:11:00 -
+Rule sol88 1988 only - Mar 8 12:10:45s -0:10:45 -
+Rule sol88 1988 only - Mar 9 12:10:30s -0:10:30 -
+Rule sol88 1988 only - Mar 10 12:10:15s -0:10:15 -
+Rule sol88 1988 only - Mar 11 12:10:00s -0:10:00 -
+Rule sol88 1988 only - Mar 12 12:09:45s -0:09:45 -
+Rule sol88 1988 only - Mar 13 12:09:30s -0:09:30 -
+Rule sol88 1988 only - Mar 14 12:09:10s -0:09:10 -
+Rule sol88 1988 only - Mar 15 12:08:55s -0:08:55 -
+Rule sol88 1988 only - Mar 16 12:08:40s -0:08:40 -
+Rule sol88 1988 only - Mar 17 12:08:20s -0:08:20 -
+Rule sol88 1988 only - Mar 18 12:08:05s -0:08:05 -
+Rule sol88 1988 only - Mar 19 12:07:45s -0:07:45 -
+Rule sol88 1988 only - Mar 20 12:07:30s -0:07:30 -
+Rule sol88 1988 only - Mar 21 12:07:10s -0:07:10 -
+Rule sol88 1988 only - Mar 22 12:06:50s -0:06:50 -
+Rule sol88 1988 only - Mar 23 12:06:35s -0:06:35 -
+Rule sol88 1988 only - Mar 24 12:06:15s -0:06:15 -
+Rule sol88 1988 only - Mar 25 12:06:00s -0:06:00 -
+Rule sol88 1988 only - Mar 26 12:05:40s -0:05:40 -
+Rule sol88 1988 only - Mar 27 12:05:20s -0:05:20 -
+Rule sol88 1988 only - Mar 28 12:05:05s -0:05:05 -
+Rule sol88 1988 only - Mar 29 12:04:45s -0:04:45 -
+Rule sol88 1988 only - Mar 30 12:04:25s -0:04:25 -
+Rule sol88 1988 only - Mar 31 12:04:10s -0:04:10 -
+Rule sol88 1988 only - Apr 1 12:03:50s -0:03:50 -
+Rule sol88 1988 only - Apr 2 12:03:35s -0:03:35 -
+Rule sol88 1988 only - Apr 3 12:03:15s -0:03:15 -
+Rule sol88 1988 only - Apr 4 12:03:00s -0:03:00 -
+Rule sol88 1988 only - Apr 5 12:02:40s -0:02:40 -
+Rule sol88 1988 only - Apr 6 12:02:25s -0:02:25 -
+Rule sol88 1988 only - Apr 7 12:02:05s -0:02:05 -
+Rule sol88 1988 only - Apr 8 12:01:50s -0:01:50 -
+Rule sol88 1988 only - Apr 9 12:01:35s -0:01:35 -
+Rule sol88 1988 only - Apr 10 12:01:15s -0:01:15 -
+Rule sol88 1988 only - Apr 11 12:01:00s -0:01:00 -
+Rule sol88 1988 only - Apr 12 12:00:45s -0:00:45 -
+Rule sol88 1988 only - Apr 13 12:00:30s -0:00:30 -
+Rule sol88 1988 only - Apr 14 12:00:15s -0:00:15 -
+Rule sol88 1988 only - Apr 15 12:00:00s 0:00:00 -
+Rule sol88 1988 only - Apr 16 11:59:45s 0:00:15 -
+Rule sol88 1988 only - Apr 17 11:59:30s 0:00:30 -
+Rule sol88 1988 only - Apr 18 11:59:20s 0:00:40 -
+Rule sol88 1988 only - Apr 19 11:59:05s 0:00:55 -
+Rule sol88 1988 only - Apr 20 11:58:55s 0:01:05 -
+Rule sol88 1988 only - Apr 21 11:58:40s 0:01:20 -
+Rule sol88 1988 only - Apr 22 11:58:30s 0:01:30 -
+Rule sol88 1988 only - Apr 23 11:58:15s 0:01:45 -
+Rule sol88 1988 only - Apr 24 11:58:05s 0:01:55 -
+Rule sol88 1988 only - Apr 25 11:57:55s 0:02:05 -
+Rule sol88 1988 only - Apr 26 11:57:45s 0:02:15 -
+Rule sol88 1988 only - Apr 27 11:57:35s 0:02:25 -
+Rule sol88 1988 only - Apr 28 11:57:30s 0:02:30 -
+Rule sol88 1988 only - Apr 29 11:57:20s 0:02:40 -
+Rule sol88 1988 only - Apr 30 11:57:10s 0:02:50 -
+Rule sol88 1988 only - May 1 11:57:05s 0:02:55 -
+Rule sol88 1988 only - May 2 11:56:55s 0:03:05 -
+Rule sol88 1988 only - May 3 11:56:50s 0:03:10 -
+Rule sol88 1988 only - May 4 11:56:45s 0:03:15 -
+Rule sol88 1988 only - May 5 11:56:40s 0:03:20 -
+Rule sol88 1988 only - May 6 11:56:35s 0:03:25 -
+Rule sol88 1988 only - May 7 11:56:30s 0:03:30 -
+Rule sol88 1988 only - May 8 11:56:25s 0:03:35 -
+Rule sol88 1988 only - May 9 11:56:25s 0:03:35 -
+Rule sol88 1988 only - May 10 11:56:20s 0:03:40 -
+Rule sol88 1988 only - May 11 11:56:20s 0:03:40 -
+Rule sol88 1988 only - May 12 11:56:20s 0:03:40 -
+Rule sol88 1988 only - May 13 11:56:20s 0:03:40 -
+Rule sol88 1988 only - May 14 11:56:20s 0:03:40 -
+Rule sol88 1988 only - May 15 11:56:20s 0:03:40 -
+Rule sol88 1988 only - May 16 11:56:20s 0:03:40 -
+Rule sol88 1988 only - May 17 11:56:20s 0:03:40 -
+Rule sol88 1988 only - May 18 11:56:25s 0:03:35 -
+Rule sol88 1988 only - May 19 11:56:25s 0:03:35 -
+Rule sol88 1988 only - May 20 11:56:30s 0:03:30 -
+Rule sol88 1988 only - May 21 11:56:35s 0:03:25 -
+Rule sol88 1988 only - May 22 11:56:40s 0:03:20 -
+Rule sol88 1988 only - May 23 11:56:45s 0:03:15 -
+Rule sol88 1988 only - May 24 11:56:50s 0:03:10 -
+Rule sol88 1988 only - May 25 11:56:55s 0:03:05 -
+Rule sol88 1988 only - May 26 11:57:00s 0:03:00 -
+Rule sol88 1988 only - May 27 11:57:05s 0:02:55 -
+Rule sol88 1988 only - May 28 11:57:15s 0:02:45 -
+Rule sol88 1988 only - May 29 11:57:20s 0:02:40 -
+Rule sol88 1988 only - May 30 11:57:30s 0:02:30 -
+Rule sol88 1988 only - May 31 11:57:40s 0:02:20 -
+Rule sol88 1988 only - Jun 1 11:57:50s 0:02:10 -
+Rule sol88 1988 only - Jun 2 11:57:55s 0:02:05 -
+Rule sol88 1988 only - Jun 3 11:58:05s 0:01:55 -
+Rule sol88 1988 only - Jun 4 11:58:15s 0:01:45 -
+Rule sol88 1988 only - Jun 5 11:58:30s 0:01:30 -
+Rule sol88 1988 only - Jun 6 11:58:40s 0:01:20 -
+Rule sol88 1988 only - Jun 7 11:58:50s 0:01:10 -
+Rule sol88 1988 only - Jun 8 11:59:00s 0:01:00 -
+Rule sol88 1988 only - Jun 9 11:59:15s 0:00:45 -
+Rule sol88 1988 only - Jun 10 11:59:25s 0:00:35 -
+Rule sol88 1988 only - Jun 11 11:59:35s 0:00:25 -
+Rule sol88 1988 only - Jun 12 11:59:50s 0:00:10 -
+Rule sol88 1988 only - Jun 13 12:00:00s 0:00:00 -
+Rule sol88 1988 only - Jun 14 12:00:15s -0:00:15 -
+Rule sol88 1988 only - Jun 15 12:00:25s -0:00:25 -
+Rule sol88 1988 only - Jun 16 12:00:40s -0:00:40 -
+Rule sol88 1988 only - Jun 17 12:00:55s -0:00:55 -
+Rule sol88 1988 only - Jun 18 12:01:05s -0:01:05 -
+Rule sol88 1988 only - Jun 19 12:01:20s -0:01:20 -
+Rule sol88 1988 only - Jun 20 12:01:30s -0:01:30 -
+Rule sol88 1988 only - Jun 21 12:01:45s -0:01:45 -
+Rule sol88 1988 only - Jun 22 12:02:00s -0:02:00 -
+Rule sol88 1988 only - Jun 23 12:02:10s -0:02:10 -
+Rule sol88 1988 only - Jun 24 12:02:25s -0:02:25 -
+Rule sol88 1988 only - Jun 25 12:02:35s -0:02:35 -
+Rule sol88 1988 only - Jun 26 12:02:50s -0:02:50 -
+Rule sol88 1988 only - Jun 27 12:03:00s -0:03:00 -
+Rule sol88 1988 only - Jun 28 12:03:15s -0:03:15 -
+Rule sol88 1988 only - Jun 29 12:03:25s -0:03:25 -
+Rule sol88 1988 only - Jun 30 12:03:40s -0:03:40 -
+Rule sol88 1988 only - Jul 1 12:03:50s -0:03:50 -
+Rule sol88 1988 only - Jul 2 12:04:00s -0:04:00 -
+Rule sol88 1988 only - Jul 3 12:04:10s -0:04:10 -
+Rule sol88 1988 only - Jul 4 12:04:25s -0:04:25 -
+Rule sol88 1988 only - Jul 5 12:04:35s -0:04:35 -
+Rule sol88 1988 only - Jul 6 12:04:45s -0:04:45 -
+Rule sol88 1988 only - Jul 7 12:04:55s -0:04:55 -
+Rule sol88 1988 only - Jul 8 12:05:05s -0:05:05 -
+Rule sol88 1988 only - Jul 9 12:05:10s -0:05:10 -
+Rule sol88 1988 only - Jul 10 12:05:20s -0:05:20 -
+Rule sol88 1988 only - Jul 11 12:05:30s -0:05:30 -
+Rule sol88 1988 only - Jul 12 12:05:35s -0:05:35 -
+Rule sol88 1988 only - Jul 13 12:05:45s -0:05:45 -
+Rule sol88 1988 only - Jul 14 12:05:50s -0:05:50 -
+Rule sol88 1988 only - Jul 15 12:05:55s -0:05:55 -
+Rule sol88 1988 only - Jul 16 12:06:00s -0:06:00 -
+Rule sol88 1988 only - Jul 17 12:06:05s -0:06:05 -
+Rule sol88 1988 only - Jul 18 12:06:10s -0:06:10 -
+Rule sol88 1988 only - Jul 19 12:06:15s -0:06:15 -
+Rule sol88 1988 only - Jul 20 12:06:20s -0:06:20 -
+Rule sol88 1988 only - Jul 21 12:06:25s -0:06:25 -
+Rule sol88 1988 only - Jul 22 12:06:25s -0:06:25 -
+Rule sol88 1988 only - Jul 23 12:06:25s -0:06:25 -
+Rule sol88 1988 only - Jul 24 12:06:30s -0:06:30 -
+Rule sol88 1988 only - Jul 25 12:06:30s -0:06:30 -
+Rule sol88 1988 only - Jul 26 12:06:30s -0:06:30 -
+Rule sol88 1988 only - Jul 27 12:06:30s -0:06:30 -
+Rule sol88 1988 only - Jul 28 12:06:30s -0:06:30 -
+Rule sol88 1988 only - Jul 29 12:06:25s -0:06:25 -
+Rule sol88 1988 only - Jul 30 12:06:25s -0:06:25 -
+Rule sol88 1988 only - Jul 31 12:06:20s -0:06:20 -
+Rule sol88 1988 only - Aug 1 12:06:15s -0:06:15 -
+Rule sol88 1988 only - Aug 2 12:06:15s -0:06:15 -
+Rule sol88 1988 only - Aug 3 12:06:10s -0:06:10 -
+Rule sol88 1988 only - Aug 4 12:06:05s -0:06:05 -
+Rule sol88 1988 only - Aug 5 12:05:55s -0:05:55 -
+Rule sol88 1988 only - Aug 6 12:05:50s -0:05:50 -
+Rule sol88 1988 only - Aug 7 12:05:45s -0:05:45 -
+Rule sol88 1988 only - Aug 8 12:05:35s -0:05:35 -
+Rule sol88 1988 only - Aug 9 12:05:25s -0:05:25 -
+Rule sol88 1988 only - Aug 10 12:05:20s -0:05:20 -
+Rule sol88 1988 only - Aug 11 12:05:10s -0:05:10 -
+Rule sol88 1988 only - Aug 12 12:05:00s -0:05:00 -
+Rule sol88 1988 only - Aug 13 12:04:50s -0:04:50 -
+Rule sol88 1988 only - Aug 14 12:04:35s -0:04:35 -
+Rule sol88 1988 only - Aug 15 12:04:25s -0:04:25 -
+Rule sol88 1988 only - Aug 16 12:04:15s -0:04:15 -
+Rule sol88 1988 only - Aug 17 12:04:00s -0:04:00 -
+Rule sol88 1988 only - Aug 18 12:03:50s -0:03:50 -
+Rule sol88 1988 only - Aug 19 12:03:35s -0:03:35 -
+Rule sol88 1988 only - Aug 20 12:03:20s -0:03:20 -
+Rule sol88 1988 only - Aug 21 12:03:05s -0:03:05 -
+Rule sol88 1988 only - Aug 22 12:02:50s -0:02:50 -
+Rule sol88 1988 only - Aug 23 12:02:35s -0:02:35 -
+Rule sol88 1988 only - Aug 24 12:02:20s -0:02:20 -
+Rule sol88 1988 only - Aug 25 12:02:00s -0:02:00 -
+Rule sol88 1988 only - Aug 26 12:01:45s -0:01:45 -
+Rule sol88 1988 only - Aug 27 12:01:30s -0:01:30 -
+Rule sol88 1988 only - Aug 28 12:01:10s -0:01:10 -
+Rule sol88 1988 only - Aug 29 12:00:50s -0:00:50 -
+Rule sol88 1988 only - Aug 30 12:00:35s -0:00:35 -
+Rule sol88 1988 only - Aug 31 12:00:15s -0:00:15 -
+Rule sol88 1988 only - Sep 1 11:59:55s 0:00:05 -
+Rule sol88 1988 only - Sep 2 11:59:35s 0:00:25 -
+Rule sol88 1988 only - Sep 3 11:59:20s 0:00:40 -
+Rule sol88 1988 only - Sep 4 11:59:00s 0:01:00 -
+Rule sol88 1988 only - Sep 5 11:58:40s 0:01:20 -
+Rule sol88 1988 only - Sep 6 11:58:20s 0:01:40 -
+Rule sol88 1988 only - Sep 7 11:58:00s 0:02:00 -
+Rule sol88 1988 only - Sep 8 11:57:35s 0:02:25 -
+Rule sol88 1988 only - Sep 9 11:57:15s 0:02:45 -
+Rule sol88 1988 only - Sep 10 11:56:55s 0:03:05 -
+Rule sol88 1988 only - Sep 11 11:56:35s 0:03:25 -
+Rule sol88 1988 only - Sep 12 11:56:15s 0:03:45 -
+Rule sol88 1988 only - Sep 13 11:55:50s 0:04:10 -
+Rule sol88 1988 only - Sep 14 11:55:30s 0:04:30 -
+Rule sol88 1988 only - Sep 15 11:55:10s 0:04:50 -
+Rule sol88 1988 only - Sep 16 11:54:50s 0:05:10 -
+Rule sol88 1988 only - Sep 17 11:54:25s 0:05:35 -
+Rule sol88 1988 only - Sep 18 11:54:05s 0:05:55 -
+Rule sol88 1988 only - Sep 19 11:53:45s 0:06:15 -
+Rule sol88 1988 only - Sep 20 11:53:25s 0:06:35 -
+Rule sol88 1988 only - Sep 21 11:53:00s 0:07:00 -
+Rule sol88 1988 only - Sep 22 11:52:40s 0:07:20 -
+Rule sol88 1988 only - Sep 23 11:52:20s 0:07:40 -
+Rule sol88 1988 only - Sep 24 11:52:00s 0:08:00 -
+Rule sol88 1988 only - Sep 25 11:51:40s 0:08:20 -
+Rule sol88 1988 only - Sep 26 11:51:15s 0:08:45 -
+Rule sol88 1988 only - Sep 27 11:50:55s 0:09:05 -
+Rule sol88 1988 only - Sep 28 11:50:35s 0:09:25 -
+Rule sol88 1988 only - Sep 29 11:50:15s 0:09:45 -
+Rule sol88 1988 only - Sep 30 11:49:55s 0:10:05 -
+Rule sol88 1988 only - Oct 1 11:49:35s 0:10:25 -
+Rule sol88 1988 only - Oct 2 11:49:20s 0:10:40 -
+Rule sol88 1988 only - Oct 3 11:49:00s 0:11:00 -
+Rule sol88 1988 only - Oct 4 11:48:40s 0:11:20 -
+Rule sol88 1988 only - Oct 5 11:48:25s 0:11:35 -
+Rule sol88 1988 only - Oct 6 11:48:05s 0:11:55 -
+Rule sol88 1988 only - Oct 7 11:47:50s 0:12:10 -
+Rule sol88 1988 only - Oct 8 11:47:30s 0:12:30 -
+Rule sol88 1988 only - Oct 9 11:47:15s 0:12:45 -
+Rule sol88 1988 only - Oct 10 11:47:00s 0:13:00 -
+Rule sol88 1988 only - Oct 11 11:46:45s 0:13:15 -
+Rule sol88 1988 only - Oct 12 11:46:30s 0:13:30 -
+Rule sol88 1988 only - Oct 13 11:46:15s 0:13:45 -
+Rule sol88 1988 only - Oct 14 11:46:00s 0:14:00 -
+Rule sol88 1988 only - Oct 15 11:45:45s 0:14:15 -
+Rule sol88 1988 only - Oct 16 11:45:35s 0:14:25 -
+Rule sol88 1988 only - Oct 17 11:45:20s 0:14:40 -
+Rule sol88 1988 only - Oct 18 11:45:10s 0:14:50 -
+Rule sol88 1988 only - Oct 19 11:45:00s 0:15:00 -
+Rule sol88 1988 only - Oct 20 11:44:45s 0:15:15 -
+Rule sol88 1988 only - Oct 21 11:44:40s 0:15:20 -
+Rule sol88 1988 only - Oct 22 11:44:30s 0:15:30 -
+Rule sol88 1988 only - Oct 23 11:44:20s 0:15:40 -
+Rule sol88 1988 only - Oct 24 11:44:10s 0:15:50 -
+Rule sol88 1988 only - Oct 25 11:44:05s 0:15:55 -
+Rule sol88 1988 only - Oct 26 11:44:00s 0:16:00 -
+Rule sol88 1988 only - Oct 27 11:43:55s 0:16:05 -
+Rule sol88 1988 only - Oct 28 11:43:50s 0:16:10 -
+Rule sol88 1988 only - Oct 29 11:43:45s 0:16:15 -
+Rule sol88 1988 only - Oct 30 11:43:40s 0:16:20 -
+Rule sol88 1988 only - Oct 31 11:43:40s 0:16:20 -
+Rule sol88 1988 only - Nov 1 11:43:35s 0:16:25 -
+Rule sol88 1988 only - Nov 2 11:43:35s 0:16:25 -
+Rule sol88 1988 only - Nov 3 11:43:35s 0:16:25 -
+Rule sol88 1988 only - Nov 4 11:43:35s 0:16:25 -
+Rule sol88 1988 only - Nov 5 11:43:40s 0:16:20 -
+Rule sol88 1988 only - Nov 6 11:43:40s 0:16:20 -
+Rule sol88 1988 only - Nov 7 11:43:45s 0:16:15 -
+Rule sol88 1988 only - Nov 8 11:43:45s 0:16:15 -
+Rule sol88 1988 only - Nov 9 11:43:50s 0:16:10 -
+Rule sol88 1988 only - Nov 10 11:44:00s 0:16:00 -
+Rule sol88 1988 only - Nov 11 11:44:05s 0:15:55 -
+Rule sol88 1988 only - Nov 12 11:44:10s 0:15:50 -
+Rule sol88 1988 only - Nov 13 11:44:20s 0:15:40 -
+Rule sol88 1988 only - Nov 14 11:44:30s 0:15:30 -
+Rule sol88 1988 only - Nov 15 11:44:40s 0:15:20 -
+Rule sol88 1988 only - Nov 16 11:44:50s 0:15:10 -
+Rule sol88 1988 only - Nov 17 11:45:00s 0:15:00 -
+Rule sol88 1988 only - Nov 18 11:45:15s 0:14:45 -
+Rule sol88 1988 only - Nov 19 11:45:25s 0:14:35 -
+Rule sol88 1988 only - Nov 20 11:45:40s 0:14:20 -
+Rule sol88 1988 only - Nov 21 11:45:55s 0:14:05 -
+Rule sol88 1988 only - Nov 22 11:46:10s 0:13:50 -
+Rule sol88 1988 only - Nov 23 11:46:30s 0:13:30 -
+Rule sol88 1988 only - Nov 24 11:46:45s 0:13:15 -
+Rule sol88 1988 only - Nov 25 11:47:05s 0:12:55 -
+Rule sol88 1988 only - Nov 26 11:47:20s 0:12:40 -
+Rule sol88 1988 only - Nov 27 11:47:40s 0:12:20 -
+Rule sol88 1988 only - Nov 28 11:48:00s 0:12:00 -
+Rule sol88 1988 only - Nov 29 11:48:25s 0:11:35 -
+Rule sol88 1988 only - Nov 30 11:48:45s 0:11:15 -
+Rule sol88 1988 only - Dec 1 11:49:05s 0:10:55 -
+Rule sol88 1988 only - Dec 2 11:49:30s 0:10:30 -
+Rule sol88 1988 only - Dec 3 11:49:55s 0:10:05 -
+Rule sol88 1988 only - Dec 4 11:50:15s 0:09:45 -
+Rule sol88 1988 only - Dec 5 11:50:40s 0:09:20 -
+Rule sol88 1988 only - Dec 6 11:51:05s 0:08:55 -
+Rule sol88 1988 only - Dec 7 11:51:35s 0:08:25 -
+Rule sol88 1988 only - Dec 8 11:52:00s 0:08:00 -
+Rule sol88 1988 only - Dec 9 11:52:25s 0:07:35 -
+Rule sol88 1988 only - Dec 10 11:52:55s 0:07:05 -
+Rule sol88 1988 only - Dec 11 11:53:20s 0:06:40 -
+Rule sol88 1988 only - Dec 12 11:53:50s 0:06:10 -
+Rule sol88 1988 only - Dec 13 11:54:15s 0:05:45 -
+Rule sol88 1988 only - Dec 14 11:54:45s 0:05:15 -
+Rule sol88 1988 only - Dec 15 11:55:15s 0:04:45 -
+Rule sol88 1988 only - Dec 16 11:55:45s 0:04:15 -
+Rule sol88 1988 only - Dec 17 11:56:15s 0:03:45 -
+Rule sol88 1988 only - Dec 18 11:56:40s 0:03:20 -
+Rule sol88 1988 only - Dec 19 11:57:10s 0:02:50 -
+Rule sol88 1988 only - Dec 20 11:57:40s 0:02:20 -
+Rule sol88 1988 only - Dec 21 11:58:10s 0:01:50 -
+Rule sol88 1988 only - Dec 22 11:58:40s 0:01:20 -
+Rule sol88 1988 only - Dec 23 11:59:10s 0:00:50 -
+Rule sol88 1988 only - Dec 24 11:59:40s 0:00:20 -
+Rule sol88 1988 only - Dec 25 12:00:10s -0:00:10 -
+Rule sol88 1988 only - Dec 26 12:00:40s -0:00:40 -
+Rule sol88 1988 only - Dec 27 12:01:10s -0:01:10 -
+Rule sol88 1988 only - Dec 28 12:01:40s -0:01:40 -
+Rule sol88 1988 only - Dec 29 12:02:10s -0:02:10 -
+Rule sol88 1988 only - Dec 30 12:02:35s -0:02:35 -
+Rule sol88 1988 only - Dec 31 12:03:05s -0:03:05 -
+
+# Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs
+# Before and after 1988, we'll operate on local mean solar time.
+
+# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
+Zone Asia/Riyadh88 3:07:04 - zzz 1988
+ 3:07:04 sol88 zzz 1989
+ 3:07:04 - zzz
+# For backward compatibility...
+Link Asia/Riyadh88 Mideast/Riyadh88
diff --git a/tools/zoneinfo/tzdata2009s/solar89 b/tools/zoneinfo/tzdata2009s/solar89
new file mode 100644
index 0000000..d24de4a
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/solar89
@@ -0,0 +1,396 @@
+# <pre>
+# @(#)solar89 8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# Apparent noon times below are for Riyadh; they're a bit off for other places.
+# Times were computed using a formula provided by the U. S. Naval Observatory:
+# eqt = -105.8 * sin(l) + 596.2 * sin(2 * l) + 4.4 * sin(3 * l)
+# -12.7 * sin(4 * l) - 429.0 * cos(l) - 2.1 * cos (2 * l)
+# + 19.3 * cos(3 * l);
+# where l is the "mean longitude of the Sun" given by
+# l = 279.642 degrees + 0.985647 * d
+# and d is the interval in days from January 0, 0 hours Universal Time
+# (equaling the day of the year plus the fraction of a day from zero hours).
+# The accuracy of the formula is plus or minus three seconds.
+#
+# Rounding to the nearest five seconds results in fewer than
+# 256 different "time types"--a limit that's faced because time types are
+# stored on disk as unsigned chars.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule sol89 1989 only - Jan 1 12:03:35s -0:03:35 -
+Rule sol89 1989 only - Jan 2 12:04:05s -0:04:05 -
+Rule sol89 1989 only - Jan 3 12:04:30s -0:04:30 -
+Rule sol89 1989 only - Jan 4 12:05:00s -0:05:00 -
+Rule sol89 1989 only - Jan 5 12:05:25s -0:05:25 -
+Rule sol89 1989 only - Jan 6 12:05:50s -0:05:50 -
+Rule sol89 1989 only - Jan 7 12:06:15s -0:06:15 -
+Rule sol89 1989 only - Jan 8 12:06:45s -0:06:45 -
+Rule sol89 1989 only - Jan 9 12:07:10s -0:07:10 -
+Rule sol89 1989 only - Jan 10 12:07:35s -0:07:35 -
+Rule sol89 1989 only - Jan 11 12:07:55s -0:07:55 -
+Rule sol89 1989 only - Jan 12 12:08:20s -0:08:20 -
+Rule sol89 1989 only - Jan 13 12:08:45s -0:08:45 -
+Rule sol89 1989 only - Jan 14 12:09:05s -0:09:05 -
+Rule sol89 1989 only - Jan 15 12:09:25s -0:09:25 -
+Rule sol89 1989 only - Jan 16 12:09:45s -0:09:45 -
+Rule sol89 1989 only - Jan 17 12:10:05s -0:10:05 -
+Rule sol89 1989 only - Jan 18 12:10:25s -0:10:25 -
+Rule sol89 1989 only - Jan 19 12:10:45s -0:10:45 -
+Rule sol89 1989 only - Jan 20 12:11:05s -0:11:05 -
+Rule sol89 1989 only - Jan 21 12:11:20s -0:11:20 -
+Rule sol89 1989 only - Jan 22 12:11:35s -0:11:35 -
+Rule sol89 1989 only - Jan 23 12:11:55s -0:11:55 -
+Rule sol89 1989 only - Jan 24 12:12:10s -0:12:10 -
+Rule sol89 1989 only - Jan 25 12:12:20s -0:12:20 -
+Rule sol89 1989 only - Jan 26 12:12:35s -0:12:35 -
+Rule sol89 1989 only - Jan 27 12:12:50s -0:12:50 -
+Rule sol89 1989 only - Jan 28 12:13:00s -0:13:00 -
+Rule sol89 1989 only - Jan 29 12:13:10s -0:13:10 -
+Rule sol89 1989 only - Jan 30 12:13:20s -0:13:20 -
+Rule sol89 1989 only - Jan 31 12:13:30s -0:13:30 -
+Rule sol89 1989 only - Feb 1 12:13:40s -0:13:40 -
+Rule sol89 1989 only - Feb 2 12:13:45s -0:13:45 -
+Rule sol89 1989 only - Feb 3 12:13:55s -0:13:55 -
+Rule sol89 1989 only - Feb 4 12:14:00s -0:14:00 -
+Rule sol89 1989 only - Feb 5 12:14:05s -0:14:05 -
+Rule sol89 1989 only - Feb 6 12:14:10s -0:14:10 -
+Rule sol89 1989 only - Feb 7 12:14:10s -0:14:10 -
+Rule sol89 1989 only - Feb 8 12:14:15s -0:14:15 -
+Rule sol89 1989 only - Feb 9 12:14:15s -0:14:15 -
+Rule sol89 1989 only - Feb 10 12:14:20s -0:14:20 -
+Rule sol89 1989 only - Feb 11 12:14:20s -0:14:20 -
+Rule sol89 1989 only - Feb 12 12:14:20s -0:14:20 -
+Rule sol89 1989 only - Feb 13 12:14:15s -0:14:15 -
+Rule sol89 1989 only - Feb 14 12:14:15s -0:14:15 -
+Rule sol89 1989 only - Feb 15 12:14:10s -0:14:10 -
+Rule sol89 1989 only - Feb 16 12:14:10s -0:14:10 -
+Rule sol89 1989 only - Feb 17 12:14:05s -0:14:05 -
+Rule sol89 1989 only - Feb 18 12:14:00s -0:14:00 -
+Rule sol89 1989 only - Feb 19 12:13:55s -0:13:55 -
+Rule sol89 1989 only - Feb 20 12:13:50s -0:13:50 -
+Rule sol89 1989 only - Feb 21 12:13:40s -0:13:40 -
+Rule sol89 1989 only - Feb 22 12:13:35s -0:13:35 -
+Rule sol89 1989 only - Feb 23 12:13:25s -0:13:25 -
+Rule sol89 1989 only - Feb 24 12:13:15s -0:13:15 -
+Rule sol89 1989 only - Feb 25 12:13:05s -0:13:05 -
+Rule sol89 1989 only - Feb 26 12:12:55s -0:12:55 -
+Rule sol89 1989 only - Feb 27 12:12:45s -0:12:45 -
+Rule sol89 1989 only - Feb 28 12:12:35s -0:12:35 -
+Rule sol89 1989 only - Mar 1 12:12:25s -0:12:25 -
+Rule sol89 1989 only - Mar 2 12:12:10s -0:12:10 -
+Rule sol89 1989 only - Mar 3 12:12:00s -0:12:00 -
+Rule sol89 1989 only - Mar 4 12:11:45s -0:11:45 -
+Rule sol89 1989 only - Mar 5 12:11:35s -0:11:35 -
+Rule sol89 1989 only - Mar 6 12:11:20s -0:11:20 -
+Rule sol89 1989 only - Mar 7 12:11:05s -0:11:05 -
+Rule sol89 1989 only - Mar 8 12:10:50s -0:10:50 -
+Rule sol89 1989 only - Mar 9 12:10:35s -0:10:35 -
+Rule sol89 1989 only - Mar 10 12:10:20s -0:10:20 -
+Rule sol89 1989 only - Mar 11 12:10:05s -0:10:05 -
+Rule sol89 1989 only - Mar 12 12:09:50s -0:09:50 -
+Rule sol89 1989 only - Mar 13 12:09:30s -0:09:30 -
+Rule sol89 1989 only - Mar 14 12:09:15s -0:09:15 -
+Rule sol89 1989 only - Mar 15 12:09:00s -0:09:00 -
+Rule sol89 1989 only - Mar 16 12:08:40s -0:08:40 -
+Rule sol89 1989 only - Mar 17 12:08:25s -0:08:25 -
+Rule sol89 1989 only - Mar 18 12:08:05s -0:08:05 -
+Rule sol89 1989 only - Mar 19 12:07:50s -0:07:50 -
+Rule sol89 1989 only - Mar 20 12:07:30s -0:07:30 -
+Rule sol89 1989 only - Mar 21 12:07:15s -0:07:15 -
+Rule sol89 1989 only - Mar 22 12:06:55s -0:06:55 -
+Rule sol89 1989 only - Mar 23 12:06:35s -0:06:35 -
+Rule sol89 1989 only - Mar 24 12:06:20s -0:06:20 -
+Rule sol89 1989 only - Mar 25 12:06:00s -0:06:00 -
+Rule sol89 1989 only - Mar 26 12:05:40s -0:05:40 -
+Rule sol89 1989 only - Mar 27 12:05:25s -0:05:25 -
+Rule sol89 1989 only - Mar 28 12:05:05s -0:05:05 -
+Rule sol89 1989 only - Mar 29 12:04:50s -0:04:50 -
+Rule sol89 1989 only - Mar 30 12:04:30s -0:04:30 -
+Rule sol89 1989 only - Mar 31 12:04:10s -0:04:10 -
+Rule sol89 1989 only - Apr 1 12:03:55s -0:03:55 -
+Rule sol89 1989 only - Apr 2 12:03:35s -0:03:35 -
+Rule sol89 1989 only - Apr 3 12:03:20s -0:03:20 -
+Rule sol89 1989 only - Apr 4 12:03:00s -0:03:00 -
+Rule sol89 1989 only - Apr 5 12:02:45s -0:02:45 -
+Rule sol89 1989 only - Apr 6 12:02:25s -0:02:25 -
+Rule sol89 1989 only - Apr 7 12:02:10s -0:02:10 -
+Rule sol89 1989 only - Apr 8 12:01:50s -0:01:50 -
+Rule sol89 1989 only - Apr 9 12:01:35s -0:01:35 -
+Rule sol89 1989 only - Apr 10 12:01:20s -0:01:20 -
+Rule sol89 1989 only - Apr 11 12:01:05s -0:01:05 -
+Rule sol89 1989 only - Apr 12 12:00:50s -0:00:50 -
+Rule sol89 1989 only - Apr 13 12:00:35s -0:00:35 -
+Rule sol89 1989 only - Apr 14 12:00:20s -0:00:20 -
+Rule sol89 1989 only - Apr 15 12:00:05s -0:00:05 -
+Rule sol89 1989 only - Apr 16 11:59:50s 0:00:10 -
+Rule sol89 1989 only - Apr 17 11:59:35s 0:00:25 -
+Rule sol89 1989 only - Apr 18 11:59:20s 0:00:40 -
+Rule sol89 1989 only - Apr 19 11:59:10s 0:00:50 -
+Rule sol89 1989 only - Apr 20 11:58:55s 0:01:05 -
+Rule sol89 1989 only - Apr 21 11:58:45s 0:01:15 -
+Rule sol89 1989 only - Apr 22 11:58:30s 0:01:30 -
+Rule sol89 1989 only - Apr 23 11:58:20s 0:01:40 -
+Rule sol89 1989 only - Apr 24 11:58:10s 0:01:50 -
+Rule sol89 1989 only - Apr 25 11:58:00s 0:02:00 -
+Rule sol89 1989 only - Apr 26 11:57:50s 0:02:10 -
+Rule sol89 1989 only - Apr 27 11:57:40s 0:02:20 -
+Rule sol89 1989 only - Apr 28 11:57:30s 0:02:30 -
+Rule sol89 1989 only - Apr 29 11:57:20s 0:02:40 -
+Rule sol89 1989 only - Apr 30 11:57:15s 0:02:45 -
+Rule sol89 1989 only - May 1 11:57:05s 0:02:55 -
+Rule sol89 1989 only - May 2 11:57:00s 0:03:00 -
+Rule sol89 1989 only - May 3 11:56:50s 0:03:10 -
+Rule sol89 1989 only - May 4 11:56:45s 0:03:15 -
+Rule sol89 1989 only - May 5 11:56:40s 0:03:20 -
+Rule sol89 1989 only - May 6 11:56:35s 0:03:25 -
+Rule sol89 1989 only - May 7 11:56:30s 0:03:30 -
+Rule sol89 1989 only - May 8 11:56:30s 0:03:30 -
+Rule sol89 1989 only - May 9 11:56:25s 0:03:35 -
+Rule sol89 1989 only - May 10 11:56:25s 0:03:35 -
+Rule sol89 1989 only - May 11 11:56:20s 0:03:40 -
+Rule sol89 1989 only - May 12 11:56:20s 0:03:40 -
+Rule sol89 1989 only - May 13 11:56:20s 0:03:40 -
+Rule sol89 1989 only - May 14 11:56:20s 0:03:40 -
+Rule sol89 1989 only - May 15 11:56:20s 0:03:40 -
+Rule sol89 1989 only - May 16 11:56:20s 0:03:40 -
+Rule sol89 1989 only - May 17 11:56:20s 0:03:40 -
+Rule sol89 1989 only - May 18 11:56:25s 0:03:35 -
+Rule sol89 1989 only - May 19 11:56:25s 0:03:35 -
+Rule sol89 1989 only - May 20 11:56:30s 0:03:30 -
+Rule sol89 1989 only - May 21 11:56:35s 0:03:25 -
+Rule sol89 1989 only - May 22 11:56:35s 0:03:25 -
+Rule sol89 1989 only - May 23 11:56:40s 0:03:20 -
+Rule sol89 1989 only - May 24 11:56:45s 0:03:15 -
+Rule sol89 1989 only - May 25 11:56:55s 0:03:05 -
+Rule sol89 1989 only - May 26 11:57:00s 0:03:00 -
+Rule sol89 1989 only - May 27 11:57:05s 0:02:55 -
+Rule sol89 1989 only - May 28 11:57:15s 0:02:45 -
+Rule sol89 1989 only - May 29 11:57:20s 0:02:40 -
+Rule sol89 1989 only - May 30 11:57:30s 0:02:30 -
+Rule sol89 1989 only - May 31 11:57:35s 0:02:25 -
+Rule sol89 1989 only - Jun 1 11:57:45s 0:02:15 -
+Rule sol89 1989 only - Jun 2 11:57:55s 0:02:05 -
+Rule sol89 1989 only - Jun 3 11:58:05s 0:01:55 -
+Rule sol89 1989 only - Jun 4 11:58:15s 0:01:45 -
+Rule sol89 1989 only - Jun 5 11:58:25s 0:01:35 -
+Rule sol89 1989 only - Jun 6 11:58:35s 0:01:25 -
+Rule sol89 1989 only - Jun 7 11:58:45s 0:01:15 -
+Rule sol89 1989 only - Jun 8 11:59:00s 0:01:00 -
+Rule sol89 1989 only - Jun 9 11:59:10s 0:00:50 -
+Rule sol89 1989 only - Jun 10 11:59:20s 0:00:40 -
+Rule sol89 1989 only - Jun 11 11:59:35s 0:00:25 -
+Rule sol89 1989 only - Jun 12 11:59:45s 0:00:15 -
+Rule sol89 1989 only - Jun 13 12:00:00s 0:00:00 -
+Rule sol89 1989 only - Jun 14 12:00:10s -0:00:10 -
+Rule sol89 1989 only - Jun 15 12:00:25s -0:00:25 -
+Rule sol89 1989 only - Jun 16 12:00:35s -0:00:35 -
+Rule sol89 1989 only - Jun 17 12:00:50s -0:00:50 -
+Rule sol89 1989 only - Jun 18 12:01:05s -0:01:05 -
+Rule sol89 1989 only - Jun 19 12:01:15s -0:01:15 -
+Rule sol89 1989 only - Jun 20 12:01:30s -0:01:30 -
+Rule sol89 1989 only - Jun 21 12:01:40s -0:01:40 -
+Rule sol89 1989 only - Jun 22 12:01:55s -0:01:55 -
+Rule sol89 1989 only - Jun 23 12:02:10s -0:02:10 -
+Rule sol89 1989 only - Jun 24 12:02:20s -0:02:20 -
+Rule sol89 1989 only - Jun 25 12:02:35s -0:02:35 -
+Rule sol89 1989 only - Jun 26 12:02:45s -0:02:45 -
+Rule sol89 1989 only - Jun 27 12:03:00s -0:03:00 -
+Rule sol89 1989 only - Jun 28 12:03:10s -0:03:10 -
+Rule sol89 1989 only - Jun 29 12:03:25s -0:03:25 -
+Rule sol89 1989 only - Jun 30 12:03:35s -0:03:35 -
+Rule sol89 1989 only - Jul 1 12:03:45s -0:03:45 -
+Rule sol89 1989 only - Jul 2 12:04:00s -0:04:00 -
+Rule sol89 1989 only - Jul 3 12:04:10s -0:04:10 -
+Rule sol89 1989 only - Jul 4 12:04:20s -0:04:20 -
+Rule sol89 1989 only - Jul 5 12:04:30s -0:04:30 -
+Rule sol89 1989 only - Jul 6 12:04:40s -0:04:40 -
+Rule sol89 1989 only - Jul 7 12:04:50s -0:04:50 -
+Rule sol89 1989 only - Jul 8 12:05:00s -0:05:00 -
+Rule sol89 1989 only - Jul 9 12:05:10s -0:05:10 -
+Rule sol89 1989 only - Jul 10 12:05:20s -0:05:20 -
+Rule sol89 1989 only - Jul 11 12:05:25s -0:05:25 -
+Rule sol89 1989 only - Jul 12 12:05:35s -0:05:35 -
+Rule sol89 1989 only - Jul 13 12:05:40s -0:05:40 -
+Rule sol89 1989 only - Jul 14 12:05:50s -0:05:50 -
+Rule sol89 1989 only - Jul 15 12:05:55s -0:05:55 -
+Rule sol89 1989 only - Jul 16 12:06:00s -0:06:00 -
+Rule sol89 1989 only - Jul 17 12:06:05s -0:06:05 -
+Rule sol89 1989 only - Jul 18 12:06:10s -0:06:10 -
+Rule sol89 1989 only - Jul 19 12:06:15s -0:06:15 -
+Rule sol89 1989 only - Jul 20 12:06:20s -0:06:20 -
+Rule sol89 1989 only - Jul 21 12:06:20s -0:06:20 -
+Rule sol89 1989 only - Jul 22 12:06:25s -0:06:25 -
+Rule sol89 1989 only - Jul 23 12:06:25s -0:06:25 -
+Rule sol89 1989 only - Jul 24 12:06:30s -0:06:30 -
+Rule sol89 1989 only - Jul 25 12:06:30s -0:06:30 -
+Rule sol89 1989 only - Jul 26 12:06:30s -0:06:30 -
+Rule sol89 1989 only - Jul 27 12:06:30s -0:06:30 -
+Rule sol89 1989 only - Jul 28 12:06:30s -0:06:30 -
+Rule sol89 1989 only - Jul 29 12:06:25s -0:06:25 -
+Rule sol89 1989 only - Jul 30 12:06:25s -0:06:25 -
+Rule sol89 1989 only - Jul 31 12:06:20s -0:06:20 -
+Rule sol89 1989 only - Aug 1 12:06:20s -0:06:20 -
+Rule sol89 1989 only - Aug 2 12:06:15s -0:06:15 -
+Rule sol89 1989 only - Aug 3 12:06:10s -0:06:10 -
+Rule sol89 1989 only - Aug 4 12:06:05s -0:06:05 -
+Rule sol89 1989 only - Aug 5 12:06:00s -0:06:00 -
+Rule sol89 1989 only - Aug 6 12:05:50s -0:05:50 -
+Rule sol89 1989 only - Aug 7 12:05:45s -0:05:45 -
+Rule sol89 1989 only - Aug 8 12:05:35s -0:05:35 -
+Rule sol89 1989 only - Aug 9 12:05:30s -0:05:30 -
+Rule sol89 1989 only - Aug 10 12:05:20s -0:05:20 -
+Rule sol89 1989 only - Aug 11 12:05:10s -0:05:10 -
+Rule sol89 1989 only - Aug 12 12:05:00s -0:05:00 -
+Rule sol89 1989 only - Aug 13 12:04:50s -0:04:50 -
+Rule sol89 1989 only - Aug 14 12:04:40s -0:04:40 -
+Rule sol89 1989 only - Aug 15 12:04:30s -0:04:30 -
+Rule sol89 1989 only - Aug 16 12:04:15s -0:04:15 -
+Rule sol89 1989 only - Aug 17 12:04:05s -0:04:05 -
+Rule sol89 1989 only - Aug 18 12:03:50s -0:03:50 -
+Rule sol89 1989 only - Aug 19 12:03:35s -0:03:35 -
+Rule sol89 1989 only - Aug 20 12:03:25s -0:03:25 -
+Rule sol89 1989 only - Aug 21 12:03:10s -0:03:10 -
+Rule sol89 1989 only - Aug 22 12:02:55s -0:02:55 -
+Rule sol89 1989 only - Aug 23 12:02:40s -0:02:40 -
+Rule sol89 1989 only - Aug 24 12:02:20s -0:02:20 -
+Rule sol89 1989 only - Aug 25 12:02:05s -0:02:05 -
+Rule sol89 1989 only - Aug 26 12:01:50s -0:01:50 -
+Rule sol89 1989 only - Aug 27 12:01:30s -0:01:30 -
+Rule sol89 1989 only - Aug 28 12:01:15s -0:01:15 -
+Rule sol89 1989 only - Aug 29 12:00:55s -0:00:55 -
+Rule sol89 1989 only - Aug 30 12:00:40s -0:00:40 -
+Rule sol89 1989 only - Aug 31 12:00:20s -0:00:20 -
+Rule sol89 1989 only - Sep 1 12:00:00s 0:00:00 -
+Rule sol89 1989 only - Sep 2 11:59:45s 0:00:15 -
+Rule sol89 1989 only - Sep 3 11:59:25s 0:00:35 -
+Rule sol89 1989 only - Sep 4 11:59:05s 0:00:55 -
+Rule sol89 1989 only - Sep 5 11:58:45s 0:01:15 -
+Rule sol89 1989 only - Sep 6 11:58:25s 0:01:35 -
+Rule sol89 1989 only - Sep 7 11:58:05s 0:01:55 -
+Rule sol89 1989 only - Sep 8 11:57:45s 0:02:15 -
+Rule sol89 1989 only - Sep 9 11:57:20s 0:02:40 -
+Rule sol89 1989 only - Sep 10 11:57:00s 0:03:00 -
+Rule sol89 1989 only - Sep 11 11:56:40s 0:03:20 -
+Rule sol89 1989 only - Sep 12 11:56:20s 0:03:40 -
+Rule sol89 1989 only - Sep 13 11:56:00s 0:04:00 -
+Rule sol89 1989 only - Sep 14 11:55:35s 0:04:25 -
+Rule sol89 1989 only - Sep 15 11:55:15s 0:04:45 -
+Rule sol89 1989 only - Sep 16 11:54:55s 0:05:05 -
+Rule sol89 1989 only - Sep 17 11:54:35s 0:05:25 -
+Rule sol89 1989 only - Sep 18 11:54:10s 0:05:50 -
+Rule sol89 1989 only - Sep 19 11:53:50s 0:06:10 -
+Rule sol89 1989 only - Sep 20 11:53:30s 0:06:30 -
+Rule sol89 1989 only - Sep 21 11:53:10s 0:06:50 -
+Rule sol89 1989 only - Sep 22 11:52:45s 0:07:15 -
+Rule sol89 1989 only - Sep 23 11:52:25s 0:07:35 -
+Rule sol89 1989 only - Sep 24 11:52:05s 0:07:55 -
+Rule sol89 1989 only - Sep 25 11:51:45s 0:08:15 -
+Rule sol89 1989 only - Sep 26 11:51:25s 0:08:35 -
+Rule sol89 1989 only - Sep 27 11:51:05s 0:08:55 -
+Rule sol89 1989 only - Sep 28 11:50:40s 0:09:20 -
+Rule sol89 1989 only - Sep 29 11:50:20s 0:09:40 -
+Rule sol89 1989 only - Sep 30 11:50:00s 0:10:00 -
+Rule sol89 1989 only - Oct 1 11:49:45s 0:10:15 -
+Rule sol89 1989 only - Oct 2 11:49:25s 0:10:35 -
+Rule sol89 1989 only - Oct 3 11:49:05s 0:10:55 -
+Rule sol89 1989 only - Oct 4 11:48:45s 0:11:15 -
+Rule sol89 1989 only - Oct 5 11:48:30s 0:11:30 -
+Rule sol89 1989 only - Oct 6 11:48:10s 0:11:50 -
+Rule sol89 1989 only - Oct 7 11:47:50s 0:12:10 -
+Rule sol89 1989 only - Oct 8 11:47:35s 0:12:25 -
+Rule sol89 1989 only - Oct 9 11:47:20s 0:12:40 -
+Rule sol89 1989 only - Oct 10 11:47:00s 0:13:00 -
+Rule sol89 1989 only - Oct 11 11:46:45s 0:13:15 -
+Rule sol89 1989 only - Oct 12 11:46:30s 0:13:30 -
+Rule sol89 1989 only - Oct 13 11:46:15s 0:13:45 -
+Rule sol89 1989 only - Oct 14 11:46:00s 0:14:00 -
+Rule sol89 1989 only - Oct 15 11:45:50s 0:14:10 -
+Rule sol89 1989 only - Oct 16 11:45:35s 0:14:25 -
+Rule sol89 1989 only - Oct 17 11:45:20s 0:14:40 -
+Rule sol89 1989 only - Oct 18 11:45:10s 0:14:50 -
+Rule sol89 1989 only - Oct 19 11:45:00s 0:15:00 -
+Rule sol89 1989 only - Oct 20 11:44:50s 0:15:10 -
+Rule sol89 1989 only - Oct 21 11:44:40s 0:15:20 -
+Rule sol89 1989 only - Oct 22 11:44:30s 0:15:30 -
+Rule sol89 1989 only - Oct 23 11:44:20s 0:15:40 -
+Rule sol89 1989 only - Oct 24 11:44:10s 0:15:50 -
+Rule sol89 1989 only - Oct 25 11:44:05s 0:15:55 -
+Rule sol89 1989 only - Oct 26 11:44:00s 0:16:00 -
+Rule sol89 1989 only - Oct 27 11:43:50s 0:16:10 -
+Rule sol89 1989 only - Oct 28 11:43:45s 0:16:15 -
+Rule sol89 1989 only - Oct 29 11:43:40s 0:16:20 -
+Rule sol89 1989 only - Oct 30 11:43:40s 0:16:20 -
+Rule sol89 1989 only - Oct 31 11:43:35s 0:16:25 -
+Rule sol89 1989 only - Nov 1 11:43:35s 0:16:25 -
+Rule sol89 1989 only - Nov 2 11:43:35s 0:16:25 -
+Rule sol89 1989 only - Nov 3 11:43:30s 0:16:30 -
+Rule sol89 1989 only - Nov 4 11:43:35s 0:16:25 -
+Rule sol89 1989 only - Nov 5 11:43:35s 0:16:25 -
+Rule sol89 1989 only - Nov 6 11:43:35s 0:16:25 -
+Rule sol89 1989 only - Nov 7 11:43:40s 0:16:20 -
+Rule sol89 1989 only - Nov 8 11:43:45s 0:16:15 -
+Rule sol89 1989 only - Nov 9 11:43:50s 0:16:10 -
+Rule sol89 1989 only - Nov 10 11:43:55s 0:16:05 -
+Rule sol89 1989 only - Nov 11 11:44:00s 0:16:00 -
+Rule sol89 1989 only - Nov 12 11:44:05s 0:15:55 -
+Rule sol89 1989 only - Nov 13 11:44:15s 0:15:45 -
+Rule sol89 1989 only - Nov 14 11:44:25s 0:15:35 -
+Rule sol89 1989 only - Nov 15 11:44:35s 0:15:25 -
+Rule sol89 1989 only - Nov 16 11:44:45s 0:15:15 -
+Rule sol89 1989 only - Nov 17 11:44:55s 0:15:05 -
+Rule sol89 1989 only - Nov 18 11:45:10s 0:14:50 -
+Rule sol89 1989 only - Nov 19 11:45:20s 0:14:40 -
+Rule sol89 1989 only - Nov 20 11:45:35s 0:14:25 -
+Rule sol89 1989 only - Nov 21 11:45:50s 0:14:10 -
+Rule sol89 1989 only - Nov 22 11:46:05s 0:13:55 -
+Rule sol89 1989 only - Nov 23 11:46:25s 0:13:35 -
+Rule sol89 1989 only - Nov 24 11:46:40s 0:13:20 -
+Rule sol89 1989 only - Nov 25 11:47:00s 0:13:00 -
+Rule sol89 1989 only - Nov 26 11:47:20s 0:12:40 -
+Rule sol89 1989 only - Nov 27 11:47:35s 0:12:25 -
+Rule sol89 1989 only - Nov 28 11:47:55s 0:12:05 -
+Rule sol89 1989 only - Nov 29 11:48:20s 0:11:40 -
+Rule sol89 1989 only - Nov 30 11:48:40s 0:11:20 -
+Rule sol89 1989 only - Dec 1 11:49:00s 0:11:00 -
+Rule sol89 1989 only - Dec 2 11:49:25s 0:10:35 -
+Rule sol89 1989 only - Dec 3 11:49:50s 0:10:10 -
+Rule sol89 1989 only - Dec 4 11:50:15s 0:09:45 -
+Rule sol89 1989 only - Dec 5 11:50:35s 0:09:25 -
+Rule sol89 1989 only - Dec 6 11:51:00s 0:09:00 -
+Rule sol89 1989 only - Dec 7 11:51:30s 0:08:30 -
+Rule sol89 1989 only - Dec 8 11:51:55s 0:08:05 -
+Rule sol89 1989 only - Dec 9 11:52:20s 0:07:40 -
+Rule sol89 1989 only - Dec 10 11:52:50s 0:07:10 -
+Rule sol89 1989 only - Dec 11 11:53:15s 0:06:45 -
+Rule sol89 1989 only - Dec 12 11:53:45s 0:06:15 -
+Rule sol89 1989 only - Dec 13 11:54:10s 0:05:50 -
+Rule sol89 1989 only - Dec 14 11:54:40s 0:05:20 -
+Rule sol89 1989 only - Dec 15 11:55:10s 0:04:50 -
+Rule sol89 1989 only - Dec 16 11:55:40s 0:04:20 -
+Rule sol89 1989 only - Dec 17 11:56:05s 0:03:55 -
+Rule sol89 1989 only - Dec 18 11:56:35s 0:03:25 -
+Rule sol89 1989 only - Dec 19 11:57:05s 0:02:55 -
+Rule sol89 1989 only - Dec 20 11:57:35s 0:02:25 -
+Rule sol89 1989 only - Dec 21 11:58:05s 0:01:55 -
+Rule sol89 1989 only - Dec 22 11:58:35s 0:01:25 -
+Rule sol89 1989 only - Dec 23 11:59:05s 0:00:55 -
+Rule sol89 1989 only - Dec 24 11:59:35s 0:00:25 -
+Rule sol89 1989 only - Dec 25 12:00:05s -0:00:05 -
+Rule sol89 1989 only - Dec 26 12:00:35s -0:00:35 -
+Rule sol89 1989 only - Dec 27 12:01:05s -0:01:05 -
+Rule sol89 1989 only - Dec 28 12:01:35s -0:01:35 -
+Rule sol89 1989 only - Dec 29 12:02:00s -0:02:00 -
+Rule sol89 1989 only - Dec 30 12:02:30s -0:02:30 -
+Rule sol89 1989 only - Dec 31 12:03:00s -0:03:00 -
+
+# Riyadh is at about 46 degrees 46 minutes East: 3 hrs, 7 mins, 4 secs
+# Before and after 1989, we'll operate on local mean solar time.
+
+# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
+Zone Asia/Riyadh89 3:07:04 - zzz 1989
+ 3:07:04 sol89 zzz 1990
+ 3:07:04 - zzz
+# For backward compatibility...
+Link Asia/Riyadh89 Mideast/Riyadh89
diff --git a/tools/zoneinfo/tzdata2009s/southamerica b/tools/zoneinfo/tzdata2009s/southamerica
new file mode 100644
index 0000000..9c4edcb
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/southamerica
@@ -0,0 +1,1517 @@
+# <pre>
+# @(#)southamerica 8.40
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# This data is by no means authoritative; if you think you know better,
+# go ahead and edit the file (and please send any changes to
+# tz@elsie.nci.nih.gov for general use in the future).
+
+# From Paul Eggert (2006-03-22):
+# A good source for time zone historical data outside the U.S. is
+# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+# San Diego: ACS Publications, Inc. (2003).
+#
+# Gwillim Law writes that a good source
+# for recent time zone data is the International Air Transport
+# Association's Standard Schedules Information Manual (IATA SSIM),
+# published semiannually. Law sent in several helpful summaries
+# of the IATA's data after 1990.
+#
+# Except where otherwise noted, Shanks & Pottenger is the source for
+# entries through 1990, and IATA SSIM is the source for entries afterwards.
+#
+# Earlier editions of these tables used the North American style (e.g. ARST and
+# ARDT for Argentine Standard and Daylight Time), but the following quote
+# suggests that it's better to use European style (e.g. ART and ARST).
+# I suggest the use of _Summer time_ instead of the more cumbersome
+# _daylight-saving time_. _Summer time_ seems to be in general use
+# in Europe and South America.
+# -- E O Cutler, _New York Times_ (1937-02-14), quoted in
+# H L Mencken, _The American Language: Supplement I_ (1960), p 466
+#
+# Earlier editions of these tables also used the North American style
+# for time zones in Brazil, but this was incorrect, as Brazilians say
+# "summer time". Reinaldo Goulart, a Sao Paulo businessman active in
+# the railroad sector, writes (1999-07-06):
+# The subject of time zones is currently a matter of discussion/debate in
+# Brazil. Let's say that "the Brasilia time" is considered the
+# "official time" because Brasilia is the capital city.
+# The other three time zones are called "Brasilia time "minus one" or
+# "plus one" or "plus two". As far as I know there is no such
+# name/designation as "Eastern Time" or "Central Time".
+# So I invented the following (English-language) abbreviations for now.
+# Corrections are welcome!
+# std dst
+# -2:00 FNT FNST Fernando de Noronha
+# -3:00 BRT BRST Brasilia
+# -4:00 AMT AMST Amazon
+# -5:00 ACT ACST Acre
+
+###############################################################################
+
+###############################################################################
+
+# Argentina
+
+# From Bob Devine (1988-01-28):
+# Argentina: first Sunday in October to first Sunday in April since 1976.
+# Double Summer time from 1969 to 1974. Switches at midnight.
+
+# From U. S. Naval Observatory (1988-01-199):
+# ARGENTINA 3 H BEHIND UTC
+
+# From Hernan G. Otero (1995-06-26):
+# I am sending modifications to the Argentine time zone table...
+# AR was chosen because they are the ISO letters that represent Argentina.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Arg 1930 only - Dec 1 0:00 1:00 S
+Rule Arg 1931 only - Apr 1 0:00 0 -
+Rule Arg 1931 only - Oct 15 0:00 1:00 S
+Rule Arg 1932 1940 - Mar 1 0:00 0 -
+Rule Arg 1932 1939 - Nov 1 0:00 1:00 S
+Rule Arg 1940 only - Jul 1 0:00 1:00 S
+Rule Arg 1941 only - Jun 15 0:00 0 -
+Rule Arg 1941 only - Oct 15 0:00 1:00 S
+Rule Arg 1943 only - Aug 1 0:00 0 -
+Rule Arg 1943 only - Oct 15 0:00 1:00 S
+Rule Arg 1946 only - Mar 1 0:00 0 -
+Rule Arg 1946 only - Oct 1 0:00 1:00 S
+Rule Arg 1963 only - Oct 1 0:00 0 -
+Rule Arg 1963 only - Dec 15 0:00 1:00 S
+Rule Arg 1964 1966 - Mar 1 0:00 0 -
+Rule Arg 1964 1966 - Oct 15 0:00 1:00 S
+Rule Arg 1967 only - Apr 2 0:00 0 -
+Rule Arg 1967 1968 - Oct Sun>=1 0:00 1:00 S
+Rule Arg 1968 1969 - Apr Sun>=1 0:00 0 -
+Rule Arg 1974 only - Jan 23 0:00 1:00 S
+Rule Arg 1974 only - May 1 0:00 0 -
+Rule Arg 1988 only - Dec 1 0:00 1:00 S
+#
+# From Hernan G. Otero (1995-06-26):
+# These corrections were contributed by InterSoft Argentina S.A.,
+# obtaining the data from the:
+# Talleres de Hidrografia Naval Argentina
+# (Argentine Naval Hydrography Institute)
+Rule Arg 1989 1993 - Mar Sun>=1 0:00 0 -
+Rule Arg 1989 1992 - Oct Sun>=15 0:00 1:00 S
+#
+# From Hernan G. Otero (1995-06-26):
+# From this moment on, the law that mandated the daylight saving
+# time corrections was derogated and no more modifications
+# to the time zones (for daylight saving) are now made.
+#
+# From Rives McDow (2000-01-10):
+# On October 3, 1999, 0:00 local, Argentina implemented daylight savings time,
+# which did not result in the switch of a time zone, as they stayed 9 hours
+# from the International Date Line.
+Rule Arg 1999 only - Oct Sun>=1 0:00 1:00 S
+# From Paul Eggert (2007-12-28):
+# DST was set to expire on March 5, not March 3, but since it was converted
+# to standard time on March 3 it's more convenient for us to pretend that
+# it ended on March 3.
+Rule Arg 2000 only - Mar 3 0:00 0 -
+#
+# From Peter Gradelski via Steffen Thorsen (2000-03-01):
+# We just checked with our Sao Paulo office and they say the government of
+# Argentina decided not to become one of the countries that go on or off DST.
+# So Buenos Aires should be -3 hours from GMT at all times.
+#
+# From Fabian L. Arce Jofre (2000-04-04):
+# The law that claimed DST for Argentina was derogated by President Fernando
+# de la Rua on March 2, 2000, because it would make people spend more energy
+# in the winter time, rather than less. The change took effect on March 3.
+#
+# From Mariano Absatz (2001-06-06):
+# one of the major newspapers here in Argentina said that the 1999
+# Timezone Law (which never was effectively applied) will (would?) be
+# in effect.... The article is at
+# http://ar.clarin.com/diario/2001-06-06/e-01701.htm
+# ... The Law itself is "Ley No 25155", sanctioned on 1999-08-25, enacted
+# 1999-09-17, and published 1999-09-21. The official publication is at:
+# http://www.boletin.jus.gov.ar/BON/Primera/1999/09-Septiembre/21/PDF/BO21-09-99LEG.PDF
+# Regretfully, you have to subscribe (and pay) for the on-line version....
+#
+# (2001-06-12):
+# the timezone for Argentina will not change next Sunday.
+# Apparently it will do so on Sunday 24th....
+# http://ar.clarin.com/diario/2001-06-12/s-03501.htm
+#
+# (2001-06-25):
+# Last Friday (yes, the last working day before the date of the change), the
+# Senate annulled the 1999 law that introduced the changes later postponed.
+# http://www.clarin.com.ar/diario/2001-06-22/s-03601.htm
+# It remains the vote of the Deputies..., but it will be the same....
+# This kind of things had always been done this way in Argentina.
+# We are still -03:00 all year round in all of the country.
+#
+# From Steffen Thorsen (2007-12-21):
+# A user (Leonardo Chaim) reported that Argentina will adopt DST....
+# all of the country (all Zone-entries) are affected. News reports like
+# http://www.lanacion.com.ar/opinion/nota.asp?nota_id=973037 indicate
+# that Argentina will use DST next year as well, from October to
+# March, although exact rules are not given.
+#
+# From Jesper Norgaard Welen (2007-12-26)
+# The last hurdle of Argentina DST is over, the proposal was approved in
+# the lower chamber too (Deputados) with a vote 192 for and 2 against.
+# By the way thanks to Mariano Absatz and Daniel Mario Vega for the link to
+# the original scanned proposal, where the dates and the zero hours are
+# clear and unambiguous...This is the article about final approval:
+# <a href="http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996">
+# http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996
+# </a>
+#
+# From Paul Eggert (2007-12-22):
+# For dates after mid-2008, the following rules are my guesses and
+# are quite possibly wrong, but are more likely than no DST at all.
+
+# From Alexander Krivenyshev (2008-09-05):
+# As per message from Carlos Alberto Fonseca Arauz (Nicaragua),
+# Argentina will start DST on Sunday October 19, 2008.
+#
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_argentina03.html">
+# http://www.worldtimezone.com/dst_news/dst_news_argentina03.html
+# </a>
+# OR
+# <a href="http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)">
+# http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)
+# </a>
+
+# From Rodrigo Severo (2008-10-06):
+# Here is some info available at a Gentoo bug related to TZ on Argentina's DST:
+# ...
+# ------- Comment #1 from [jmdocile] 2008-10-06 16:28 0000 -------
+# Hi, there is a problem with timezone-data-2008e and maybe with
+# timezone-data-2008f
+# Argentinian law [Number] 25.155 is no longer valid.
+# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm">
+# http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm
+# </a>
+# The new one is law [Number] 26.350
+# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm">
+# http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm
+# </a>
+# So there is no summer time in Argentina for now.
+
+# From Mariano Absatz (2008-10-20):
+# Decree 1693/2008 applies Law 26.350 for the summer 2008/2009 establishing DST in Argentina
+# From 2008-10-19 until 2009-03-15
+# <a href="http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01">
+# http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01
+# </a>
+#
+# Decree 1705/2008 excepting 12 Provinces from applying DST in the summer 2008/2009:
+# Catamarca, La Rioja, Mendoza, Salta, San Juan, San Luis, La Pampa, Neuquen, Rio Negro, Chubut, Santa Cruz
+# and Tierra del Fuego
+# <a href="http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01">
+# http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01
+# </a>
+#
+# Press release 235 dated Saturday October 18th, from the Government of the Province of Jujuy saying
+# it will not apply DST either (even when it was not included in Decree 1705/2008)
+# <a href="http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc">
+# http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc
+# </a>
+
+# From fullinet (2009-10-18):
+# As announced in
+# <a hef="http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356">
+# http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356
+# </a>
+# (an official .gob.ar) under title: "Sin Cambio de Hora" (english: "No hour change")
+#
+# "Por el momento, el Gobierno Nacional resolvio no modificar la hora
+# oficial, decision que estaba en estudio para su implementacion el
+# domingo 18 de octubre. Desde el Ministerio de Planificacion se anuncio
+# que la Argentina hoy, en estas condiciones meteorologicas, no necesita
+# la modificacion del huso horario, ya que 2009 nos encuentra con
+# crecimiento en la produccion y distribucion energetica."
+
+Rule Arg 2007 only - Dec 30 0:00 1:00 S
+Rule Arg 2008 2009 - Mar Sun>=15 0:00 0 -
+Rule Arg 2008 only - Oct Sun>=15 0:00 1:00 S
+
+# From Mariano Absatz (2004-05-21):
+# Today it was officially published that the Province of Mendoza is changing
+# its timezone this winter... starting tomorrow night....
+# http://www.gobernac.mendoza.gov.ar/boletin/pdf/20040521-27158-normas.pdf
+# From Paul Eggert (2004-05-24):
+# It's Law No. 7,210. This change is due to a public power emergency, so for
+# now we'll assume it's for this year only.
+#
+# From Paul Eggert (2006-03-22):
+# <a href="http://www.spicasc.net/horvera.html">
+# Hora de verano para la Republica Argentina (2003-06-08)
+# </a> says that standard time in Argentina from 1894-10-31
+# to 1920-05-01 was -4:16:48.25. Go with this more-precise value
+# over Shanks & Pottenger.
+#
+# From Mariano Absatz (2004-06-05):
+# These media articles from a major newspaper mostly cover the current state:
+# http://www.lanacion.com.ar/04/05/27/de_604825.asp
+# http://www.lanacion.com.ar/04/05/28/de_605203.asp
+#
+# The following eight (8) provinces pulled clocks back to UTC-04:00 at
+# midnight Monday May 31st. (that is, the night between 05/31 and 06/01).
+# Apparently, all nine provinces would go back to UTC-03:00 at the same
+# time in October 17th.
+#
+# Catamarca, Chubut, La Rioja, San Juan, San Luis, Santa Cruz,
+# Tierra del Fuego, Tucuman.
+#
+# From Mariano Absatz (2004-06-14):
+# ... this weekend, the Province of Tucuman decided it'd go back to UTC-03:00
+# yesterday midnight (that is, at 24:00 Saturday 12th), since the people's
+# annoyance with the change is much higher than the power savings obtained....
+#
+# From Gwillim Law (2004-06-14):
+# http://www.lanacion.com.ar/04/06/10/de_609078.asp ...
+# "The time change in Tierra del Fuego was a conflicted decision from
+# the start. The government had decreed that the measure would take
+# effect on June 1, but a normative error forced the new time to begin
+# three days earlier, from a Saturday to a Sunday....
+# Our understanding was that the change was originally scheduled to take place
+# on June 1 at 00:00 in Chubut, Santa Cruz, Tierra del Fuego (and some other
+# provinces). Sunday was May 30, only two days earlier. So the article
+# contains a contradiction. I would give more credence to the Saturday/Sunday
+# date than the "three days earlier" phrase, and conclude that Tierra del
+# Fuego set its clocks back at 2004-05-30 00:00.
+#
+# From Steffen Thorsen (2004-10-05):
+# The previous law 7210 which changed the province of Mendoza's time zone
+# back in May have been modified slightly in a new law 7277, which set the
+# new end date to 2004-09-26 (original date was 2004-10-17).
+# http://www.gobernac.mendoza.gov.ar/boletin/pdf/20040924-27244-normas.pdf
+#
+# From Mariano Absatz (2004-10-05):
+# San Juan changed from UTC-03:00 to UTC-04:00 at midnight between
+# Sunday, May 30th and Monday, May 31st. It changed back to UTC-03:00
+# at midnight between Saturday, July 24th and Sunday, July 25th....
+# http://www.sanjuan.gov.ar/prensa/archivo/000329.html
+# http://www.sanjuan.gov.ar/prensa/archivo/000426.html
+# http://www.sanjuan.gov.ar/prensa/archivo/000441.html
+
+# From Alex Krivenyshev (2008-01-17):
+# Here are articles that Argentina Province San Luis is planning to end DST
+# as earlier as upcoming Monday January 21, 2008 or February 2008:
+#
+# Provincia argentina retrasa reloj y marca diferencia con resto del pais
+# (Argentine Province delayed clock and mark difference with the rest of the
+# country)
+# <a href="http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel">
+# http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel
+# </a>
+#
+# Es inminente que en San Luis atrasen una hora los relojes
+# (It is imminent in San Luis clocks one hour delay)
+# <a href="http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414">
+# http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414
+# </a>
+#
+# <a href="http://www.worldtimezone.net/dst_news/dst_news_argentina02.html">
+# http://www.worldtimezone.net/dst_news/dst_news_argentina02.html
+# </a>
+
+# From Jesper Norgaard Welen (2008-01-18):
+# The page of the San Luis provincial government
+# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812">
+# http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812
+# </a>
+# confirms what Alex Krivenyshev has earlier sent to the tz
+# emailing list about that San Luis plans to return to standard
+# time much earlier than the rest of the country. It also
+# confirms that upon request the provinces San Juan and Mendoza
+# refused to follow San Luis in this change.
+#
+# The change is supposed to take place Monday the 21.st at 0:00
+# hours. As far as I understand it if this goes ahead, we need
+# a new timezone for San Luis (although there are also documented
+# independent changes in the southamerica file of San Luis in
+# 1990 and 1991 which has not been confirmed).
+
+# From Jesper Norgaard Welen (2008-01-25):
+# Unfortunately the below page has become defunct, about the San Luis
+# time change. Perhaps because it now is part of a group of pages "Most
+# important pages of 2008."
+#
+# You can use
+# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834">
+# http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834
+# </a>
+# instead it seems. Or use "Buscador" from the main page of the San Luis
+# government, and fill in "huso" and click OK, and you will get 3 pages
+# from which the first one is identical to the above.
+
+# From Mariano Absatz (2008-01-28):
+# I can confirm that the Province of San Luis (and so far only that
+# province) decided to go back to UTC-3 effective midnight Jan 20th 2008
+# (that is, Monday 21st at 0:00 is the time the clocks were delayed back
+# 1 hour), and they intend to keep UTC-3 as their timezone all year round
+# (that is, unless they change their mind any minute now).
+#
+# So we'll have to add yet another city to 'southamerica' (I think San
+# Luis city is the mos populated city in the Province, so it'd be
+# America/Argentina/San_Luis... of course I can't remember if San Luis's
+# history of particular changes goes along with Mendoza or San Juan :-(
+# (I only remember not being able to collect hard facts about San Luis
+# back in 2004, when these provinces changed to UTC-4 for a few days, I
+# mailed them personally and never got an answer).
+
+# From Paul Eggert (2008-06-30):
+# Unless otherwise specified, data are from Shanks & Pottenger through 1992,
+# from the IATA otherwise. As noted below, Shanks & Pottenger say that
+# America/Cordoba split into 6 subregions during 1991/1992, one of which
+# was America/San_Luis, but we haven't verified this yet so for now we'll
+# keep America/Cordoba a single region rather than splitting it into the
+# other 5 subregions.
+
+# From Mariano Absatz (2009-03-13):
+# Yesterday (with our usual 2-day notice) the Province of San Luis
+# decided that next Sunday instead of "staying" @utc-03:00 they will go
+# to utc-04:00 until the second Saturday in October...
+#
+# The press release is at
+# <a href="http://www.sanluis.gov.ar/SL/Paginas/NoticiaDetalle.asp?TemaId=1&InfoPrensaId=3102">
+# http://www.sanluis.gov.ar/SL/Paginas/NoticiaDetalle.asp?TemaId=1&InfoPrensaId=3102
+# </a>
+# (I couldn't find the decree, but
+# <a href="http://www.sanluis.gov.ar">
+# www.sanluis.gov.ar
+# <a/>
+# is the official page for the Province Government).
+#
+# There's also a note in only one of the major national papers (La Nación) at
+# <a href="http://www.lanacion.com.ar/nota.asp?nota_id=1107912">
+# http://www.lanacion.com.ar/nota.asp?nota_id=1107912
+# </a>
+#
+# The press release says:
+# (...) anunció que el próximo domingo a las 00:00 los puntanos deberán
+# atrasar una hora sus relojes.
+#
+# A partir de entonces, San Luis establecerá el huso horario propio de
+# la Provincia. De esta manera, durante el periodo del calendario anual
+# 2009, el cambio horario quedará comprendido entre las 00:00 del tercer
+# domingo de marzo y las 24:00 del segundo sábado de octubre.
+# Quick&dirty translation
+# (...) announced that next Sunday, at 00:00, Puntanos (the San Luis
+# inhabitants) will have to turn back one hour their clocks
+#
+# Since then, San Luis will establish its own Province timezone. Thus,
+# during 2009, this timezone change will run from 00:00 the third Sunday
+# in March until 24:00 of the second Saturday in October.
+
+# From Mariano Absatz (2009-10-16):
+# ...the Province of San Luis is a case in itself.
+#
+# The Law at
+# <a href="http://www.diputadossanluis.gov.ar/diputadosasp/paginas/verNorma.asp?NormaID=276>"
+# http://www.diputadossanluis.gov.ar/diputadosasp/paginas/verNorma.asp?NormaID=276
+# </a>
+# is ambiguous because establishes a calendar from the 2nd Sunday in
+# October at 0:00 thru the 2nd Saturday in March at 24:00 and the
+# complement of that starting on the 2nd Sunday of March at 0:00 and
+# ending on the 2nd Saturday of March at 24:00.
+#
+# This clearly breaks every time the 1st of March or October is a Sunday.
+#
+# IMHO, the "spirit of the Law" is to make the changes at 0:00 on the 2nd
+# Sunday of October and March.
+#
+# The problem is that the changes in the rest of the Provinces that did
+# change in 2007/2008, were made according to the Federal Law and Decrees
+# that did so on the 3rd Sunday of October and March.
+#
+# In fact, San Luis actually switched from UTC-4 to UTC-3 last Sunday
+# (October 11th) at 0:00.
+#
+# So I guess a new set of rules, besides "Arg", must be made and the last
+# America/Argentina/San_Luis entries should change to use these...
+#
+# I'm enclosing a patch that does what I say... regretfully, the San Luis
+# timezone must be called "WART/WARST" even when most of the time (like,
+# right now) WARST == ART... that is, since last Sunday, all the country
+# is using UTC-3, but in my patch, San Luis calls it "WARST" and the rest
+# of the country calls it "ART".
+# ...
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+#
+# Buenos Aires (BA), Capital Federal (CF),
+Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31
+ -4:16:48 - CMT 1920 May # Cordoba Mean Time
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1999 Oct 3
+ -4:00 Arg AR%sT 2000 Mar 3
+ -3:00 Arg AR%sT
+#
+# Cordoba (CB), Santa Fe (SF), Entre Rios (ER), Corrientes (CN), Misiones (MN),
+# Chaco (CC), Formosa (FM), Santiago del Estero (SE)
+#
+# Shanks & Pottenger also make the following claims, which we haven't verified:
+# - Formosa switched to -3:00 on 1991-01-07.
+# - Misiones switched to -3:00 on 1990-12-29.
+# - Chaco switched to -3:00 on 1991-01-04.
+# - Santiago del Estero switched to -4:00 on 1991-04-01,
+# then to -3:00 on 1991-04-26.
+#
+Zone America/Argentina/Cordoba -4:16:48 - LMT 1894 Oct 31
+ -4:16:48 - CMT 1920 May
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1991 Mar 3
+ -4:00 - WART 1991 Oct 20
+ -3:00 Arg AR%sT 1999 Oct 3
+ -4:00 Arg AR%sT 2000 Mar 3
+ -3:00 Arg AR%sT
+#
+# Salta (SA), La Pampa (LP), Neuquen (NQ), Rio Negro (RN)
+Zone America/Argentina/Salta -4:21:40 - LMT 1894 Oct 31
+ -4:16:48 - CMT 1920 May
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1991 Mar 3
+ -4:00 - WART 1991 Oct 20
+ -3:00 Arg AR%sT 1999 Oct 3
+ -4:00 Arg AR%sT 2000 Mar 3
+ -3:00 Arg AR%sT 2008 Oct 18
+ -3:00 - ART
+#
+# Tucuman (TM)
+Zone America/Argentina/Tucuman -4:20:52 - LMT 1894 Oct 31
+ -4:16:48 - CMT 1920 May
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1991 Mar 3
+ -4:00 - WART 1991 Oct 20
+ -3:00 Arg AR%sT 1999 Oct 3
+ -4:00 Arg AR%sT 2000 Mar 3
+ -3:00 - ART 2004 Jun 1
+ -4:00 - WART 2004 Jun 13
+ -3:00 Arg AR%sT
+#
+# La Rioja (LR)
+Zone America/Argentina/La_Rioja -4:27:24 - LMT 1894 Oct 31
+ -4:16:48 - CMT 1920 May
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1991 Mar 1
+ -4:00 - WART 1991 May 7
+ -3:00 Arg AR%sT 1999 Oct 3
+ -4:00 Arg AR%sT 2000 Mar 3
+ -3:00 - ART 2004 Jun 1
+ -4:00 - WART 2004 Jun 20
+ -3:00 Arg AR%sT 2008 Oct 18
+ -3:00 - ART
+#
+# San Juan (SJ)
+Zone America/Argentina/San_Juan -4:34:04 - LMT 1894 Oct 31
+ -4:16:48 - CMT 1920 May
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1991 Mar 1
+ -4:00 - WART 1991 May 7
+ -3:00 Arg AR%sT 1999 Oct 3
+ -4:00 Arg AR%sT 2000 Mar 3
+ -3:00 - ART 2004 May 31
+ -4:00 - WART 2004 Jul 25
+ -3:00 Arg AR%sT 2008 Oct 18
+ -3:00 - ART
+#
+# Jujuy (JY)
+Zone America/Argentina/Jujuy -4:21:12 - LMT 1894 Oct 31
+ -4:16:48 - CMT 1920 May
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1990 Mar 4
+ -4:00 - WART 1990 Oct 28
+ -4:00 1:00 WARST 1991 Mar 17
+ -4:00 - WART 1991 Oct 6
+ -3:00 1:00 ARST 1992
+ -3:00 Arg AR%sT 1999 Oct 3
+ -4:00 Arg AR%sT 2000 Mar 3
+ -3:00 Arg AR%sT 2008 Oct 18
+ -3:00 - ART
+#
+# Catamarca (CT), Chubut (CH)
+Zone America/Argentina/Catamarca -4:23:08 - LMT 1894 Oct 31
+ -4:16:48 - CMT 1920 May
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1991 Mar 3
+ -4:00 - WART 1991 Oct 20
+ -3:00 Arg AR%sT 1999 Oct 3
+ -4:00 Arg AR%sT 2000 Mar 3
+ -3:00 - ART 2004 Jun 1
+ -4:00 - WART 2004 Jun 20
+ -3:00 Arg AR%sT 2008 Oct 18
+ -3:00 - ART
+#
+# Mendoza (MZ)
+Zone America/Argentina/Mendoza -4:35:16 - LMT 1894 Oct 31
+ -4:16:48 - CMT 1920 May
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1990 Mar 4
+ -4:00 - WART 1990 Oct 15
+ -4:00 1:00 WARST 1991 Mar 1
+ -4:00 - WART 1991 Oct 15
+ -4:00 1:00 WARST 1992 Mar 1
+ -4:00 - WART 1992 Oct 18
+ -3:00 Arg AR%sT 1999 Oct 3
+ -4:00 Arg AR%sT 2000 Mar 3
+ -3:00 - ART 2004 May 23
+ -4:00 - WART 2004 Sep 26
+ -3:00 Arg AR%sT 2008 Oct 18
+ -3:00 - ART
+#
+# San Luis (SL)
+
+Rule SanLuis 2008 max - Mar Sun>=8 0:00 0 -
+Rule SanLuis 2007 max - Oct Sun>=8 0:00 1:00 S
+
+Zone America/Argentina/San_Luis -4:25:24 - LMT 1894 Oct 31
+ -4:16:48 - CMT 1920 May
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1990
+ -3:00 1:00 ARST 1990 Mar 14
+ -4:00 - WART 1990 Oct 15
+ -4:00 1:00 WARST 1991 Mar 1
+ -4:00 - WART 1991 Jun 1
+ -3:00 - ART 1999 Oct 3
+ -4:00 1:00 WARST 2000 Mar 3
+ -3:00 - ART 2004 May 31
+ -4:00 - WART 2004 Jul 25
+ -3:00 Arg AR%sT 2008 Jan 21
+ -4:00 SanLuis WAR%sT
+#
+# Santa Cruz (SC)
+Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31
+ -4:16:48 - CMT 1920 May # Cordoba Mean Time
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1999 Oct 3
+ -4:00 Arg AR%sT 2000 Mar 3
+ -3:00 - ART 2004 Jun 1
+ -4:00 - WART 2004 Jun 20
+ -3:00 Arg AR%sT 2008 Oct 18
+ -3:00 - ART
+#
+# Tierra del Fuego, Antartida e Islas del Atlantico Sur (TF)
+Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31
+ -4:16:48 - CMT 1920 May # Cordoba Mean Time
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1999 Oct 3
+ -4:00 Arg AR%sT 2000 Mar 3
+ -3:00 - ART 2004 May 30
+ -4:00 - WART 2004 Jun 20
+ -3:00 Arg AR%sT 2008 Oct 18
+ -3:00 - ART
+
+# Aruba
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Aruba -4:40:24 - LMT 1912 Feb 12 # Oranjestad
+ -4:30 - ANT 1965 # Netherlands Antilles Time
+ -4:00 - AST
+
+# Bolivia
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/La_Paz -4:32:36 - LMT 1890
+ -4:32:36 - CMT 1931 Oct 15 # Calamarca MT
+ -4:32:36 1:00 BOST 1932 Mar 21 # Bolivia ST
+ -4:00 - BOT # Bolivia Time
+
+# Brazil
+
+# From Paul Eggert (1993-11-18):
+# The mayor of Rio recently attempted to change the time zone rules
+# just in his city, in order to leave more summer time for the tourist trade.
+# The rule change lasted only part of the day;
+# the federal government refused to follow the city's rules, and business
+# was in a chaos, so the mayor backed down that afternoon.
+
+# From IATA SSIM (1996-02):
+# _Only_ the following states in BR1 observe DST: Rio Grande do Sul (RS),
+# Santa Catarina (SC), Parana (PR), Sao Paulo (SP), Rio de Janeiro (RJ),
+# Espirito Santo (ES), Minas Gerais (MG), Bahia (BA), Goias (GO),
+# Distrito Federal (DF), Tocantins (TO), Sergipe [SE] and Alagoas [AL].
+# [The last three states are new to this issue of the IATA SSIM.]
+
+# From Gwillim Law (1996-10-07):
+# Geography, history (Tocantins was part of Goias until 1989), and other
+# sources of time zone information lead me to believe that AL, SE, and TO were
+# always in BR1, and so the only change was whether or not they observed DST....
+# The earliest issue of the SSIM I have is 2/91. Each issue from then until
+# 9/95 says that DST is observed only in the ten states I quoted from 9/95,
+# along with Mato Grosso (MT) and Mato Grosso do Sul (MS), which are in BR2
+# (UTC-4).... The other two time zones given for Brazil are BR3, which is
+# UTC-5, no DST, and applies only in the state of Acre (AC); and BR4, which is
+# UTC-2, and applies to Fernando de Noronha (formerly FN, but I believe it's
+# become part of the state of Pernambuco). The boundary between BR1 and BR2
+# has never been clearly stated. They've simply been called East and West.
+# However, some conclusions can be drawn from another IATA manual: the Airline
+# Coding Directory, which lists close to 400 airports in Brazil. For each
+# airport it gives a time zone which is coded to the SSIM. From that
+# information, I'm led to conclude that the states of Amapa (AP), Ceara (CE),
+# Maranhao (MA), Paraiba (PR), Pernambuco (PE), Piaui (PI), and Rio Grande do
+# Norte (RN), and the eastern part of Para (PA) are all in BR1 without DST.
+
+# From Marcos Tadeu (1998-09-27):
+# <a href="http://pcdsh01.on.br/verao1.html">
+# Brazilian official page
+# </a>
+
+# From Jesper Norgaard (2000-11-03):
+# [For an official list of which regions in Brazil use which time zones, see:]
+# http://pcdsh01.on.br/Fusbr.htm
+# http://pcdsh01.on.br/Fusbrhv.htm
+
+# From Celso Doria via David Madeo (2002-10-09):
+# The reason for the delay this year has to do with elections in Brazil.
+#
+# Unlike in the United States, elections in Brazil are 100% computerized and
+# the results are known almost immediately. Yesterday, it was the first
+# round of the elections when 115 million Brazilians voted for President,
+# Governor, Senators, Federal Deputies, and State Deputies. Nobody is
+# counting (or re-counting) votes anymore and we know there will be a second
+# round for the Presidency and also for some Governors. The 2nd round will
+# take place on October 27th.
+#
+# The reason why the DST will only begin November 3rd is that the thousands
+# of electoral machines used cannot have their time changed, and since the
+# Constitution says the elections must begin at 8:00 AM and end at 5:00 PM,
+# the Government decided to postpone DST, instead of changing the Constitution
+# (maybe, for the next elections, it will be possible to change the clock)...
+
+# From Rodrigo Severo (2004-10-04):
+# It's just the biannual change made necessary by the much hyped, supposedly
+# modern Brazilian eletronic voting machines which, apparently, can't deal
+# with a time change between the first and the second rounds of the elections.
+
+# From Steffen Thorsen (2007-09-20):
+# Brazil will start DST on 2007-10-14 00:00 and end on 2008-02-17 00:00:
+# http://www.mme.gov.br/site/news/detail.do;jsessionid=BBA06811AFCAAC28F0285210913513DA?newsId=13975
+
+# From Paul Schulze (2008-06-24):
+# ...by law number 11.662 of April 24, 2008 (published in the "Diario
+# Oficial da Uniao"...) in Brazil there are changes in the timezones,
+# effective today (00:00am at June 24, 2008) as follows:
+#
+# a) The timezone UTC+5 is e[x]tinguished, with all the Acre state and the
+# part of the Amazonas state that had this timezone now being put to the
+# timezone UTC+4
+# b) The whole Para state now is put at timezone UTC+3, instead of just
+# part of it, as was before.
+#
+# This change follows a proposal of senator Tiao Viana of Acre state, that
+# proposed it due to concerns about open television channels displaying
+# programs inappropriate to youths in the states that had the timezone
+# UTC+5 too early in the night. In the occasion, some more corrections
+# were proposed, trying to unify the timezones of any given state. This
+# change modifies timezone rules defined in decree 2.784 of 18 June,
+# 1913.
+
+# From Rodrigo Severo (2008-06-24):
+# Just correcting the URL:
+# <a href="https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=do&secao=1&pagina=1&data=25/04/2008">
+# https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=do&secao=1&pagina=1&data=25/04/2008
+# </a>
+#
+# As a result of the above Decree I believe the America/Rio_Branco
+# timezone shall be modified from UTC-5 to UTC-4 and a new timezone shall
+# be created to represent the the west side of the Para State. I
+# suggest this new timezone be called Santarem as the most
+# important/populated city in the affected area.
+#
+# This new timezone would be the same as the Rio_Branco timezone up to
+# the 2008/06/24 change which would be to UTC-3 instead of UTC-4.
+
+# From Alex Krivenyshev (2008-06-24):
+# This is a quick reference page for New and Old Brazil Time Zones map.
+# <a href="http://www.worldtimezone.com/brazil-time-new-old.php">
+# http://www.worldtimezone.com/brazil-time-new-old.php
+# </a>
+#
+# - 4 time zones replaced by 3 time zones-eliminating time zone UTC- 05
+# (state Acre and the part of the Amazonas will be UTC/GMT- 04) - western
+# part of Par state is moving to one timezone UTC- 03 (from UTC -04).
+
+# From Paul Eggert (2002-10-10):
+# The official decrees referenced below are mostly taken from
+# <a href="http://pcdsh01.on.br/DecHV.html">
+# Decretos sobre o Horario de Verao no Brasil
+# </a>.
+
+# From Steffen Thorsen (2008-08-29):
+# As announced by the government and many newspapers in Brazil late
+# yesterday, Brazil will start DST on 2008-10-19 (need to change rule) and
+# it will end on 2009-02-15 (current rule for Brazil is fine). Based on
+# past years experience with the elections, there was a good chance that
+# the start was postponed to November, but it did not happen this year.
+#
+# It has not yet been posted to http://pcdsh01.on.br/DecHV.html
+#
+# An official page about it:
+# <a href="http://www.mme.gov.br/site/news/detail.do?newsId=16722">
+# http://www.mme.gov.br/site/news/detail.do?newsId=16722
+# </a>
+# Note that this link does not always work directly, but must be accessed
+# by going to
+# <a href="http://www.mme.gov.br/first">
+# http://www.mme.gov.br/first
+# </a>
+#
+# One example link that works directly:
+# <a href="http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54">
+# http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54
+# (Portuguese)
+# </a>
+#
+# We have a written a short article about it as well:
+# <a href="http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html">
+# http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
+# </a>
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+# Decree <a href="http://pcdsh01.on.br/HV20466.htm">20,466</a> (1931-10-01)
+# Decree <a href="http://pcdsh01.on.br/HV21896.htm">21,896</a> (1932-01-10)
+Rule Brazil 1931 only - Oct 3 11:00 1:00 S
+Rule Brazil 1932 1933 - Apr 1 0:00 0 -
+Rule Brazil 1932 only - Oct 3 0:00 1:00 S
+# Decree <a href="http://pcdsh01.on.br/HV23195.htm">23,195</a> (1933-10-10)
+# revoked DST.
+# Decree <a href="http://pcdsh01.on.br/HV27496.htm">27,496</a> (1949-11-24)
+# Decree <a href="http://pcdsh01.on.br/HV27998.htm">27,998</a> (1950-04-13)
+Rule Brazil 1949 1952 - Dec 1 0:00 1:00 S
+Rule Brazil 1950 only - Apr 16 1:00 0 -
+Rule Brazil 1951 1952 - Apr 1 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/HV32308.htm">32,308</a> (1953-02-24)
+Rule Brazil 1953 only - Mar 1 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/HV34724.htm">34,724</a> (1953-11-30)
+# revoked DST.
+# Decree <a href="http://pcdsh01.on.br/HV52700.htm">52,700</a> (1963-10-18)
+# established DST from 1963-10-23 00:00 to 1964-02-29 00:00
+# in SP, RJ, GB, MG, ES, due to the prolongation of the drought.
+# Decree <a href="http://pcdsh01.on.br/HV53071.htm">53,071</a> (1963-12-03)
+# extended the above decree to all of the national territory on 12-09.
+Rule Brazil 1963 only - Dec 9 0:00 1:00 S
+# Decree <a href="http://pcdsh01.on.br/HV53604.htm">53,604</a> (1964-02-25)
+# extended summer time by one day to 1964-03-01 00:00 (start of school).
+Rule Brazil 1964 only - Mar 1 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/HV55639.htm">55,639</a> (1965-01-27)
+Rule Brazil 1965 only - Jan 31 0:00 1:00 S
+Rule Brazil 1965 only - Mar 31 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/HV57303.htm">57,303</a> (1965-11-22)
+Rule Brazil 1965 only - Dec 1 0:00 1:00 S
+# Decree <a href="http://pcdsh01.on.br/HV57843.htm">57,843</a> (1966-02-18)
+Rule Brazil 1966 1968 - Mar 1 0:00 0 -
+Rule Brazil 1966 1967 - Nov 1 0:00 1:00 S
+# Decree <a href="http://pcdsh01.on.br/HV63429.htm">63,429</a> (1968-10-15)
+# revoked DST.
+# Decree <a href="http://pcdsh01.on.br/HV91698.htm">91,698</a> (1985-09-27)
+Rule Brazil 1985 only - Nov 2 0:00 1:00 S
+# Decree 92,310 (1986-01-21)
+# Decree 92,463 (1986-03-13)
+Rule Brazil 1986 only - Mar 15 0:00 0 -
+# Decree 93,316 (1986-10-01)
+Rule Brazil 1986 only - Oct 25 0:00 1:00 S
+Rule Brazil 1987 only - Feb 14 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/HV94922.htm">94,922</a> (1987-09-22)
+Rule Brazil 1987 only - Oct 25 0:00 1:00 S
+Rule Brazil 1988 only - Feb 7 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/HV96676.htm">96,676</a> (1988-09-12)
+# except for the states of AC, AM, PA, RR, RO, and AP (then a territory)
+Rule Brazil 1988 only - Oct 16 0:00 1:00 S
+Rule Brazil 1989 only - Jan 29 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/HV98077.htm">98,077</a> (1989-08-21)
+# with the same exceptions
+Rule Brazil 1989 only - Oct 15 0:00 1:00 S
+Rule Brazil 1990 only - Feb 11 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/HV99530.htm">99,530</a> (1990-09-17)
+# adopted by RS, SC, PR, SP, RJ, ES, MG, GO, MS, DF.
+# Decree 99,629 (1990-10-19) adds BA, MT.
+Rule Brazil 1990 only - Oct 21 0:00 1:00 S
+Rule Brazil 1991 only - Feb 17 0:00 0 -
+# <a href="http://pcdsh01.on.br/HV1991.htm">Unnumbered decree</a> (1991-09-25)
+# adopted by RS, SC, PR, SP, RJ, ES, MG, BA, GO, MT, MS, DF.
+Rule Brazil 1991 only - Oct 20 0:00 1:00 S
+Rule Brazil 1992 only - Feb 9 0:00 0 -
+# <a href="http://pcdsh01.on.br/HV1992.htm">Unnumbered decree</a> (1992-10-16)
+# adopted by same states.
+Rule Brazil 1992 only - Oct 25 0:00 1:00 S
+Rule Brazil 1993 only - Jan 31 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/HV942.htm">942</a> (1993-09-28)
+# adopted by same states, plus AM.
+# Decree <a href="http://pcdsh01.on.br/HV1252.htm">1,252</a> (1994-09-22;
+# web page corrected 2004-01-07) adopted by same states, minus AM.
+# Decree <a href="http://pcdsh01.on.br/HV1636.htm">1,636</a> (1995-09-14)
+# adopted by same states, plus MT and TO.
+# Decree <a href="http://pcdsh01.on.br/HV1674.htm">1,674</a> (1995-10-13)
+# adds AL, SE.
+Rule Brazil 1993 1995 - Oct Sun>=11 0:00 1:00 S
+Rule Brazil 1994 1995 - Feb Sun>=15 0:00 0 -
+Rule Brazil 1996 only - Feb 11 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/HV2000.htm">2,000</a> (1996-09-04)
+# adopted by same states, minus AL, SE.
+Rule Brazil 1996 only - Oct 6 0:00 1:00 S
+Rule Brazil 1997 only - Feb 16 0:00 0 -
+# From Daniel C. Sobral (1998-02-12):
+# In 1997, the DS began on October 6. The stated reason was that
+# because international television networks ignored Brazil's policy on DS,
+# they bought the wrong times on satellite for coverage of Pope's visit.
+# This year, the ending date of DS was postponed to March 1
+# to help dealing with the shortages of electric power.
+#
+# Decree 2,317 (1997-09-04), adopted by same states.
+Rule Brazil 1997 only - Oct 6 0:00 1:00 S
+# Decree <a href="http://pcdsh01.on.br/figuras/HV2495.JPG">2,495</a>
+# (1998-02-10)
+Rule Brazil 1998 only - Mar 1 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/figuras/Hv98.jpg">2,780</a> (1998-09-11)
+# adopted by the same states as before.
+Rule Brazil 1998 only - Oct 11 0:00 1:00 S
+Rule Brazil 1999 only - Feb 21 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/figuras/HV3150.gif">3,150</a>
+# (1999-08-23) adopted by same states.
+# Decree <a href="http://pcdsh01.on.br/DecHV99.gif">3,188</a> (1999-09-30)
+# adds SE, AL, PB, PE, RN, CE, PI, MA and RR.
+Rule Brazil 1999 only - Oct 3 0:00 1:00 S
+Rule Brazil 2000 only - Feb 27 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/DEC3592.htm">3,592</a> (2000-09-06)
+# adopted by the same states as before.
+# Decree <a href="http://pcdsh01.on.br/Dec3630.jpg">3,630</a> (2000-10-13)
+# repeals DST in PE and RR, effective 2000-10-15 00:00.
+# Decree <a href="http://pcdsh01.on.br/Dec3632.jpg">3,632</a> (2000-10-17)
+# repeals DST in SE, AL, PB, RN, CE, PI and MA, effective 2000-10-22 00:00.
+# Decree <a href="http://pcdsh01.on.br/figuras/HV3916.gif">3,916</a>
+# (2001-09-13) reestablishes DST in AL, CE, MA, PB, PE, PI, RN, SE.
+Rule Brazil 2000 2001 - Oct Sun>=8 0:00 1:00 S
+Rule Brazil 2001 2006 - Feb Sun>=15 0:00 0 -
+# Decree 4,399 (2002-10-01) repeals DST in AL, CE, MA, PB, PE, PI, RN, SE.
+# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2002/D4399.htm">4,399</a>
+Rule Brazil 2002 only - Nov 3 0:00 1:00 S
+# Decree 4,844 (2003-09-24; corrected 2003-09-26) repeals DST in BA, MT, TO.
+# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2003/D4844.htm">4,844</a>
+Rule Brazil 2003 only - Oct 19 0:00 1:00 S
+# Decree 5,223 (2004-10-01) reestablishes DST in MT.
+# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2004-2006/2004/Decreto/D5223.htm">5,223</a>
+Rule Brazil 2004 only - Nov 2 0:00 1:00 S
+# Decree <a href="http://pcdsh01.on.br/DecHV5539.gif">5,539</a> (2005-09-19),
+# adopted by the same states as before.
+Rule Brazil 2005 only - Oct 16 0:00 1:00 S
+# Decree <a href="http://pcdsh01.on.br/DecHV5920.gif">5,920</a> (2006-10-03),
+# adopted by the same states as before.
+Rule Brazil 2006 only - Nov 5 0:00 1:00 S
+Rule Brazil 2007 only - Feb 25 0:00 0 -
+# Decree <a href="http://pcdsh01.on.br/DecHV6212.gif">6,212</a> (2007-09-26),
+# adopted by the same states as before.
+Rule Brazil 2007 only - Oct Sun>=8 0:00 1:00 S
+# From Frederico A. C. Neves (2008-09-10):
+# Acording to this decree
+# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm">
+# http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm
+# </a>
+# [t]he DST period in Brazil now on will be from the 3rd Oct Sunday to the
+# 3rd Feb Sunday. There is an exception on the return date when this is
+# the Carnival Sunday then the return date will be the next Sunday...
+Rule Brazil 2008 max - Oct Sun>=15 0:00 1:00 S
+Rule Brazil 2008 2011 - Feb Sun>=15 0:00 0 -
+Rule Brazil 2012 only - Feb Sun>=22 0:00 0 -
+Rule Brazil 2013 2014 - Feb Sun>=15 0:00 0 -
+Rule Brazil 2015 only - Feb Sun>=22 0:00 0 -
+Rule Brazil 2016 2022 - Feb Sun>=15 0:00 0 -
+Rule Brazil 2023 only - Feb Sun>=22 0:00 0 -
+Rule Brazil 2024 2025 - Feb Sun>=15 0:00 0 -
+Rule Brazil 2026 only - Feb Sun>=22 0:00 0 -
+Rule Brazil 2027 2033 - Feb Sun>=15 0:00 0 -
+Rule Brazil 2034 only - Feb Sun>=22 0:00 0 -
+Rule Brazil 2035 2036 - Feb Sun>=15 0:00 0 -
+Rule Brazil 2037 only - Feb Sun>=22 0:00 0 -
+# From Arthur David Olson (2008-09-29):
+# The next is wrong in some years but is better than nothing.
+Rule Brazil 2038 max - Feb Sun>=15 0:00 0 -
+
+# The latest ruleset listed above says that the following states observe DST:
+# DF, ES, GO, MG, MS, MT, PR, RJ, RS, SC, SP.
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+#
+# Fernando de Noronha (administratively part of PE)
+Zone America/Noronha -2:09:40 - LMT 1914
+ -2:00 Brazil FN%sT 1990 Sep 17
+ -2:00 - FNT 1999 Sep 30
+ -2:00 Brazil FN%sT 2000 Oct 15
+ -2:00 - FNT 2001 Sep 13
+ -2:00 Brazil FN%sT 2002 Oct 1
+ -2:00 - FNT
+# Other Atlantic islands have no permanent settlement.
+# These include Trindade and Martin Vaz (administratively part of ES),
+# Atol das Rocas (RN), and Penedos de Sao Pedro e Sao Paulo (PE).
+# Fernando de Noronha was a separate territory from 1942-09-02 to 1989-01-01;
+# it also included the Penedos.
+#
+# Amapa (AP), east Para (PA)
+# East Para includes Belem, Maraba, Serra Norte, and Sao Felix do Xingu.
+# The division between east and west Para is the river Xingu.
+# In the north a very small part from the river Javary (now Jari I guess,
+# the border with Amapa) to the Amazon, then to the Xingu.
+Zone America/Belem -3:13:56 - LMT 1914
+ -3:00 Brazil BR%sT 1988 Sep 12
+ -3:00 - BRT
+#
+# west Para (PA)
+# West Para includes Altamira, Oribidos, Prainha, Oriximina, and Santarem.
+Zone America/Santarem -3:38:48 - LMT 1914
+ -4:00 Brazil AM%sT 1988 Sep 12
+ -4:00 - AMT 2008 Jun 24 00:00
+ -3:00 - BRT
+#
+# Maranhao (MA), Piaui (PI), Ceara (CE), Rio Grande do Norte (RN),
+# Paraiba (PB)
+Zone America/Fortaleza -2:34:00 - LMT 1914
+ -3:00 Brazil BR%sT 1990 Sep 17
+ -3:00 - BRT 1999 Sep 30
+ -3:00 Brazil BR%sT 2000 Oct 22
+ -3:00 - BRT 2001 Sep 13
+ -3:00 Brazil BR%sT 2002 Oct 1
+ -3:00 - BRT
+#
+# Pernambuco (PE) (except Atlantic islands)
+Zone America/Recife -2:19:36 - LMT 1914
+ -3:00 Brazil BR%sT 1990 Sep 17
+ -3:00 - BRT 1999 Sep 30
+ -3:00 Brazil BR%sT 2000 Oct 15
+ -3:00 - BRT 2001 Sep 13
+ -3:00 Brazil BR%sT 2002 Oct 1
+ -3:00 - BRT
+#
+# Tocantins (TO)
+Zone America/Araguaina -3:12:48 - LMT 1914
+ -3:00 Brazil BR%sT 1990 Sep 17
+ -3:00 - BRT 1995 Sep 14
+ -3:00 Brazil BR%sT 2003 Sep 24
+ -3:00 - BRT
+#
+# Alagoas (AL), Sergipe (SE)
+Zone America/Maceio -2:22:52 - LMT 1914
+ -3:00 Brazil BR%sT 1990 Sep 17
+ -3:00 - BRT 1995 Oct 13
+ -3:00 Brazil BR%sT 1996 Sep 4
+ -3:00 - BRT 1999 Sep 30
+ -3:00 Brazil BR%sT 2000 Oct 22
+ -3:00 - BRT 2001 Sep 13
+ -3:00 Brazil BR%sT 2002 Oct 1
+ -3:00 - BRT
+#
+# Bahia (BA)
+# There are too many Salvadors elsewhere, so use America/Bahia instead
+# of America/Salvador.
+Zone America/Bahia -2:34:04 - LMT 1914
+ -3:00 Brazil BR%sT 2003 Sep 24
+ -3:00 - BRT
+#
+# Goias (GO), Distrito Federal (DF), Minas Gerais (MG),
+# Espirito Santo (ES), Rio de Janeiro (RJ), Sao Paulo (SP), Parana (PR),
+# Santa Catarina (SC), Rio Grande do Sul (RS)
+Zone America/Sao_Paulo -3:06:28 - LMT 1914
+ -3:00 Brazil BR%sT 1963 Oct 23 00:00
+ -3:00 1:00 BRST 1964
+ -3:00 Brazil BR%sT
+#
+# Mato Grosso do Sul (MS)
+Zone America/Campo_Grande -3:38:28 - LMT 1914
+ -4:00 Brazil AM%sT
+#
+# Mato Grosso (MT)
+Zone America/Cuiaba -3:44:20 - LMT 1914
+ -4:00 Brazil AM%sT 2003 Sep 24
+ -4:00 - AMT 2004 Oct 1
+ -4:00 Brazil AM%sT
+#
+# Rondonia (RO)
+Zone America/Porto_Velho -4:15:36 - LMT 1914
+ -4:00 Brazil AM%sT 1988 Sep 12
+ -4:00 - AMT
+#
+# Roraima (RR)
+Zone America/Boa_Vista -4:02:40 - LMT 1914
+ -4:00 Brazil AM%sT 1988 Sep 12
+ -4:00 - AMT 1999 Sep 30
+ -4:00 Brazil AM%sT 2000 Oct 15
+ -4:00 - AMT
+#
+# east Amazonas (AM): Boca do Acre, Jutai, Manaus, Floriano Peixoto
+# The great circle line from Tabatinga to Porto Acre divides
+# east from west Amazonas.
+Zone America/Manaus -4:00:04 - LMT 1914
+ -4:00 Brazil AM%sT 1988 Sep 12
+ -4:00 - AMT 1993 Sep 28
+ -4:00 Brazil AM%sT 1994 Sep 22
+ -4:00 - AMT
+#
+# west Amazonas (AM): Atalaia do Norte, Boca do Maoco, Benjamin Constant,
+# Eirunepe, Envira, Ipixuna
+Zone America/Eirunepe -4:39:28 - LMT 1914
+ -5:00 Brazil AC%sT 1988 Sep 12
+ -5:00 - ACT 1993 Sep 28
+ -5:00 Brazil AC%sT 1994 Sep 22
+ -5:00 - ACT 2008 Jun 24 00:00
+ -4:00 - AMT
+#
+# Acre (AC)
+Zone America/Rio_Branco -4:31:12 - LMT 1914
+ -5:00 Brazil AC%sT 1988 Sep 12
+ -5:00 - ACT 2008 Jun 24 00:00
+ -4:00 - AMT
+
+# Chile
+
+# From Eduardo Krell (1995-10-19):
+# The law says to switch to DST at midnight [24:00] on the second SATURDAY
+# of October.... The law is the same for March and October.
+# (1998-09-29):
+# Because of the drought this year, the government decided to go into
+# DST earlier (saturday 9/26 at 24:00). This is a one-time change only ...
+# (unless there's another dry season next year, I guess).
+
+# From Julio I. Pacheco Troncoso (1999-03-18):
+# Because of the same drought, the government decided to end DST later,
+# on April 3, (one-time change).
+
+# From Oscar van Vlijmen (2006-10-08):
+# http://www.horaoficial.cl/cambio.htm
+
+# From Jesper Norgaard Welen (2006-10-08):
+# I think that there are some obvious mistakes in the suggested link
+# from Oscar van Vlijmen,... for instance entry 66 says that GMT-4
+# ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15
+# (they should have been 1990-09-15 and 1990-09-16 respectively), but
+# anyhow it clears up some doubts too.
+
+# From Paul Eggert (2006-12-27):
+# The following data for Chile and America/Santiago are from
+# <http://www.horaoficial.cl/horaof.htm> (2006-09-20), transcribed by
+# Jesper Norgaard Welen. The data for Pacific/Easter are from Shanks
+# & Pottenger, except with DST transitions after 1932 cloned from
+# America/Santiago. The pre-1980 Pacific/Easter data are dubious,
+# but we have no other source.
+
+# From German Poo-Caaman~o (2008-03-03):
+# Due to drought, Chile extends Daylight Time in three weeks. This
+# is one-time change (Saturday 3/29 at 24:00 for America/Santiago
+# and Saturday 3/29 at 22:00 for Pacific/Easter)
+# The Supreme Decree is located at
+# <a href="http://www.shoa.cl/servicios/supremo316.pdf">
+# http://www.shoa.cl/servicios/supremo316.pdf
+# </a>
+# and the instructions for 2008 are located in:
+# <a href="http://www.horaoficial.cl/cambio.htm">
+# http://www.horaoficial.cl/cambio.htm
+# </a>.
+
+# From Jose Miguel Garrido (2008-03-05):
+# ...
+# You could see the announces of the change on
+# <a href="http://www.shoa.cl/noticias/2008/04hora/hora.htm">
+# http://www.shoa.cl/noticias/2008/04hora/hora.htm
+# </a>.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Chile 1927 1932 - Sep 1 0:00 1:00 S
+Rule Chile 1928 1932 - Apr 1 0:00 0 -
+Rule Chile 1942 only - Jun 1 4:00u 0 -
+Rule Chile 1942 only - Aug 1 5:00u 1:00 S
+Rule Chile 1946 only - Jul 15 4:00u 1:00 S
+Rule Chile 1946 only - Sep 1 3:00u 0:00 -
+Rule Chile 1947 only - Apr 1 4:00u 0 -
+Rule Chile 1968 only - Nov 3 4:00u 1:00 S
+Rule Chile 1969 only - Mar 30 3:00u 0 -
+Rule Chile 1969 only - Nov 23 4:00u 1:00 S
+Rule Chile 1970 only - Mar 29 3:00u 0 -
+Rule Chile 1971 only - Mar 14 3:00u 0 -
+Rule Chile 1970 1972 - Oct Sun>=9 4:00u 1:00 S
+Rule Chile 1972 1986 - Mar Sun>=9 3:00u 0 -
+Rule Chile 1973 only - Sep 30 4:00u 1:00 S
+Rule Chile 1974 1987 - Oct Sun>=9 4:00u 1:00 S
+Rule Chile 1987 only - Apr 12 3:00u 0 -
+Rule Chile 1988 1989 - Mar Sun>=9 3:00u 0 -
+Rule Chile 1988 only - Oct Sun>=1 4:00u 1:00 S
+Rule Chile 1989 only - Oct Sun>=9 4:00u 1:00 S
+Rule Chile 1990 only - Mar 18 3:00u 0 -
+Rule Chile 1990 only - Sep 16 4:00u 1:00 S
+Rule Chile 1991 1996 - Mar Sun>=9 3:00u 0 -
+Rule Chile 1991 1997 - Oct Sun>=9 4:00u 1:00 S
+Rule Chile 1997 only - Mar 30 3:00u 0 -
+Rule Chile 1998 only - Mar Sun>=9 3:00u 0 -
+Rule Chile 1998 only - Sep 27 4:00u 1:00 S
+Rule Chile 1999 only - Apr 4 3:00u 0 -
+Rule Chile 1999 max - Oct Sun>=9 4:00u 1:00 S
+Rule Chile 2000 2007 - Mar Sun>=9 3:00u 0 -
+# N.B.: the end of March 29 in Chile is March 30 in Universal time,
+# which is used below in specifying the transition.
+Rule Chile 2008 only - Mar 30 3:00u 0 -
+Rule Chile 2009 max - Mar Sun>=9 3:00u 0 -
+# IATA SSIM anomalies: (1992-02) says 1992-03-14;
+# (1996-09) says 1998-03-08. Ignore these.
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Santiago -4:42:46 - LMT 1890
+ -4:42:46 - SMT 1910 # Santiago Mean Time
+ -5:00 - CLT 1916 Jul 1 # Chile Time
+ -4:42:46 - SMT 1918 Sep 1 # Santiago Mean Time
+ -4:00 - CLT 1919 Jul 1 # Chile Time
+ -4:42:46 - SMT 1927 Sep 1 # Santiago Mean Time
+ -5:00 Chile CL%sT 1947 May 22 # Chile Time
+ -4:00 Chile CL%sT
+Zone Pacific/Easter -7:17:44 - LMT 1890
+ -7:17:28 - EMT 1932 Sep # Easter Mean Time
+ -7:00 Chile EAS%sT 1982 Mar 13 21:00 # Easter I Time
+ -6:00 Chile EAS%sT
+#
+# Sala y Gomez Island is like Pacific/Easter.
+# Other Chilean locations, including Juan Fernandez Is, San Ambrosio,
+# San Felix, and Antarctic bases, are like America/Santiago.
+
+# Colombia
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule CO 1992 only - May 3 0:00 1:00 S
+Rule CO 1993 only - Apr 4 0:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Bogota -4:56:20 - LMT 1884 Mar 13
+ -4:56:20 - BMT 1914 Nov 23 # Bogota Mean Time
+ -5:00 CO CO%sT # Colombia Time
+# Malpelo, Providencia, San Andres
+# no information; probably like America/Bogota
+
+# Curacao
+#
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger say that The Bottom and Philipsburg have been at
+# -4:00 since standard time was introduced on 1912-03-02; and that
+# Kralendijk and Rincon used Kralendijk Mean Time (-4:33:08) from
+# 1912-02-02 to 1965-01-01. The former is dubious, since S&P also say
+# Saba Island has been like Curacao.
+# This all predates our 1970 cutoff, though.
+#
+# By July 2007 Curacao and St Maarten are planned to become
+# associated states within the Netherlands, much like Aruba;
+# Bonaire, Saba and St Eustatius would become directly part of the
+# Netherlands as Kingdom Islands. This won't affect their time zones
+# though, as far as we know.
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Curacao -4:35:44 - LMT 1912 Feb 12 # Willemstad
+ -4:30 - ANT 1965 # Netherlands Antilles Time
+ -4:00 - AST
+
+# Ecuador
+#
+# From Paul Eggert (2007-03-04):
+# Apparently Ecuador had a failed experiment with DST in 1992.
+# <http://midena.gov.ec/content/view/1261/208/> (2007-02-27) and
+# <http://www.hoy.com.ec/NoticiaNue.asp?row_id=249856> (2006-11-06) both
+# talk about "hora Sixto". Leave this alone for now, as we have no data.
+#
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Guayaquil -5:19:20 - LMT 1890
+ -5:14:00 - QMT 1931 # Quito Mean Time
+ -5:00 - ECT # Ecuador Time
+Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno
+ -5:00 - ECT 1986
+ -6:00 - GALT # Galapagos Time
+
+# Falklands
+
+# From Paul Eggert (2006-03-22):
+# Between 1990 and 2000 inclusive, Shanks & Pottenger and the IATA agree except
+# the IATA gives 1996-09-08. Go with Shanks & Pottenger.
+
+# From Falkland Islands Government Office, London (2001-01-22)
+# via Jesper Norgaard:
+# ... the clocks revert back to Local Mean Time at 2 am on Sunday 15
+# April 2001 and advance one hour to summer time at 2 am on Sunday 2
+# September. It is anticipated that the clocks will revert back at 2
+# am on Sunday 21 April 2002 and advance to summer time at 2 am on
+# Sunday 1 September.
+
+# From Rives McDow (2001-02-13):
+#
+# I have communicated several times with people there, and the last
+# time I had communications that was helpful was in 1998. Here is
+# what was said then:
+#
+# "The general rule was that Stanley used daylight saving and the Camp
+# did not. However for various reasons many people in the Camp have
+# started to use daylight saving (known locally as 'Stanley Time')
+# There is no rule as to who uses daylight saving - it is a matter of
+# personal choice and so it is impossible to draw a map showing who
+# uses it and who does not. Any list would be out of date as soon as
+# it was produced. This year daylight saving ended on April 18/19th
+# and started again on September 12/13th. I do not know what the rule
+# is, but can find out if you like. We do not change at the same time
+# as UK or Chile."
+#
+# I did have in my notes that the rule was "Second Saturday in Sep at
+# 0:00 until third Saturday in Apr at 0:00". I think that this does
+# not agree in some cases with Shanks; is this true?
+#
+# Also, there is no mention in the list that some areas in the
+# Falklands do not use DST. I have found in my communications there
+# that these areas are on the western half of East Falkland and all of
+# West Falkland. Stanley is the only place that consistently observes
+# DST. Again, as in other places in the world, the farmers don't like
+# it. West Falkland is almost entirely sheep farmers.
+#
+# I know one lady there that keeps a list of which farm keeps DST and
+# which doesn't each year. She runs a shop in Stanley, and says that
+# the list changes each year. She uses it to communicate to her
+# customers, catching them when they are home for lunch or dinner.
+
+# From Paul Eggert (2001-03-05):
+# For now, we'll just record the time in Stanley, since we have no
+# better info.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Falk 1937 1938 - Sep lastSun 0:00 1:00 S
+Rule Falk 1938 1942 - Mar Sun>=19 0:00 0 -
+Rule Falk 1939 only - Oct 1 0:00 1:00 S
+Rule Falk 1940 1942 - Sep lastSun 0:00 1:00 S
+Rule Falk 1943 only - Jan 1 0:00 0 -
+Rule Falk 1983 only - Sep lastSun 0:00 1:00 S
+Rule Falk 1984 1985 - Apr lastSun 0:00 0 -
+Rule Falk 1984 only - Sep 16 0:00 1:00 S
+Rule Falk 1985 2000 - Sep Sun>=9 0:00 1:00 S
+Rule Falk 1986 2000 - Apr Sun>=16 0:00 0 -
+Rule Falk 2001 max - Apr Sun>=15 2:00 0 -
+Rule Falk 2001 max - Sep Sun>=1 2:00 1:00 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Atlantic/Stanley -3:51:24 - LMT 1890
+ -3:51:24 - SMT 1912 Mar 12 # Stanley Mean Time
+ -4:00 Falk FK%sT 1983 May # Falkland Is Time
+ -3:00 Falk FK%sT 1985 Sep 15
+ -4:00 Falk FK%sT
+
+# French Guiana
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Cayenne -3:29:20 - LMT 1911 Jul
+ -4:00 - GFT 1967 Oct # French Guiana Time
+ -3:00 - GFT
+
+# Guyana
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown
+ -3:45 - GBGT 1966 May 26 # Br Guiana Time
+ -3:45 - GYT 1975 Jul 31 # Guyana Time
+ -3:00 - GYT 1991
+# IATA SSIM (1996-06) says -4:00. Assume a 1991 switch.
+ -4:00 - GYT
+
+# Paraguay
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger say that spring transitions are from 01:00 -> 02:00,
+# and autumn transitions are from 00:00 -> 23:00. Go with pre-1999
+# editions of Shanks, and with the IATA, who say transitions occur at 00:00.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Para 1975 1988 - Oct 1 0:00 1:00 S
+Rule Para 1975 1978 - Mar 1 0:00 0 -
+Rule Para 1979 1991 - Apr 1 0:00 0 -
+Rule Para 1989 only - Oct 22 0:00 1:00 S
+Rule Para 1990 only - Oct 1 0:00 1:00 S
+Rule Para 1991 only - Oct 6 0:00 1:00 S
+Rule Para 1992 only - Mar 1 0:00 0 -
+Rule Para 1992 only - Oct 5 0:00 1:00 S
+Rule Para 1993 only - Mar 31 0:00 0 -
+Rule Para 1993 1995 - Oct 1 0:00 1:00 S
+Rule Para 1994 1995 - Feb lastSun 0:00 0 -
+Rule Para 1996 only - Mar 1 0:00 0 -
+# IATA SSIM (2000-02) says 1999-10-10; ignore this for now.
+# From Steffen Thorsen (2000-10-02):
+# I have three independent reports that Paraguay changed to DST this Sunday
+# (10-01).
+#
+# Translated by Gwillim Law (2001-02-27) from
+# <a href="http://www.diarionoticias.com.py/011000/nacional/naciona1.htm">
+# Noticias, a daily paper in Asuncion, Paraguay (2000-10-01)
+# </a>:
+# Starting at 0:00 today, the clock will be set forward 60 minutes, in
+# fulfillment of Decree No. 7,273 of the Executive Power.... The time change
+# system has been operating for several years. Formerly there was a separate
+# decree each year; the new law has the same effect, but permanently. Every
+# year, the time will change on the first Sunday of October; likewise, the
+# clock will be set back on the first Sunday of March.
+#
+Rule Para 1996 2001 - Oct Sun>=1 0:00 1:00 S
+# IATA SSIM (1997-09) says Mar 1; go with Shanks & Pottenger.
+Rule Para 1997 only - Feb lastSun 0:00 0 -
+# Shanks & Pottenger say 1999-02-28; IATA SSIM (1999-02) says 1999-02-27, but
+# (1999-09) reports no date; go with above sources and Gerd Knops (2001-02-27).
+Rule Para 1998 2001 - Mar Sun>=1 0:00 0 -
+# From Rives McDow (2002-02-28):
+# A decree was issued in Paraguay (no. 16350) on 2002-02-26 that changed the
+# dst method to be from the first Sunday in September to the first Sunday in
+# April.
+Rule Para 2002 2004 - Apr Sun>=1 0:00 0 -
+Rule Para 2002 2003 - Sep Sun>=1 0:00 1:00 S
+#
+# From Jesper Norgaard Welen (2005-01-02):
+# There are several sources that claim that Paraguay made
+# a timezone rule change in autumn 2004.
+# From Steffen Thorsen (2005-01-05):
+# Decree 1,867 (2004-03-05)
+# From Carlos Raul Perasso via Jesper Norgaard Welen (2006-10-13)
+# <http://www.presidencia.gov.py/decretos/D1867.pdf>
+Rule Para 2004 max - Oct Sun>=15 0:00 1:00 S
+Rule Para 2005 max - Mar Sun>=8 0:00 0 -
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Asuncion -3:50:40 - LMT 1890
+ -3:50:40 - AMT 1931 Oct 10 # Asuncion Mean Time
+ -4:00 - PYT 1972 Oct # Paraguay Time
+ -3:00 - PYT 1974 Apr
+ -4:00 Para PY%sT
+
+# Peru
+#
+# <a href="news:xrGmb.39935$gA1.13896113@news4.srv.hcvlny.cv.net">
+# From Evelyn C. Leeper via Mark Brader (2003-10-26):</a>
+# When we were in Peru in 1985-1986, they apparently switched over
+# sometime between December 29 and January 3 while we were on the Amazon.
+#
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger don't have this transition. Assume 1986 was like 1987.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Peru 1938 only - Jan 1 0:00 1:00 S
+Rule Peru 1938 only - Apr 1 0:00 0 -
+Rule Peru 1938 1939 - Sep lastSun 0:00 1:00 S
+Rule Peru 1939 1940 - Mar Sun>=24 0:00 0 -
+Rule Peru 1986 1987 - Jan 1 0:00 1:00 S
+Rule Peru 1986 1987 - Apr 1 0:00 0 -
+Rule Peru 1990 only - Jan 1 0:00 1:00 S
+Rule Peru 1990 only - Apr 1 0:00 0 -
+# IATA is ambiguous for 1993/1995; go with Shanks & Pottenger.
+Rule Peru 1994 only - Jan 1 0:00 1:00 S
+Rule Peru 1994 only - Apr 1 0:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Lima -5:08:12 - LMT 1890
+ -5:08:36 - LMT 1908 Jul 28 # Lima Mean Time?
+ -5:00 Peru PE%sT # Peru Time
+
+# South Georgia
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken
+ -2:00 - GST # South Georgia Time
+
+# South Sandwich Is
+# uninhabited; scientific personnel have wintered
+
+# Suriname
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Paramaribo -3:40:40 - LMT 1911
+ -3:40:52 - PMT 1935 # Paramaribo Mean Time
+ -3:40:36 - PMT 1945 Oct # The capital moved?
+ -3:30 - NEGT 1975 Nov 20 # Dutch Guiana Time
+ -3:30 - SRT 1984 Oct # Suriname Time
+ -3:00 - SRT
+
+# Trinidad and Tobago
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Port_of_Spain -4:06:04 - LMT 1912 Mar 2
+ -4:00 - AST
+
+# Uruguay
+# From Paul Eggert (1993-11-18):
+# Uruguay wins the prize for the strangest peacetime manipulation of the rules.
+# From Shanks & Pottenger:
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+# Whitman gives 1923 Oct 1; go with Shanks & Pottenger.
+Rule Uruguay 1923 only - Oct 2 0:00 0:30 HS
+Rule Uruguay 1924 1926 - Apr 1 0:00 0 -
+Rule Uruguay 1924 1925 - Oct 1 0:00 0:30 HS
+Rule Uruguay 1933 1935 - Oct lastSun 0:00 0:30 HS
+# Shanks & Pottenger give 1935 Apr 1 0:00 & 1936 Mar 30 0:00; go with Whitman.
+Rule Uruguay 1934 1936 - Mar Sat>=25 23:30s 0 -
+Rule Uruguay 1936 only - Nov 1 0:00 0:30 HS
+Rule Uruguay 1937 1941 - Mar lastSun 0:00 0 -
+# Whitman gives 1937 Oct 3; go with Shanks & Pottenger.
+Rule Uruguay 1937 1940 - Oct lastSun 0:00 0:30 HS
+# Whitman gives 1941 Oct 24 - 1942 Mar 27, 1942 Dec 14 - 1943 Apr 13,
+# and 1943 Apr 13 ``to present time''; go with Shanks & Pottenger.
+Rule Uruguay 1941 only - Aug 1 0:00 0:30 HS
+Rule Uruguay 1942 only - Jan 1 0:00 0 -
+Rule Uruguay 1942 only - Dec 14 0:00 1:00 S
+Rule Uruguay 1943 only - Mar 14 0:00 0 -
+Rule Uruguay 1959 only - May 24 0:00 1:00 S
+Rule Uruguay 1959 only - Nov 15 0:00 0 -
+Rule Uruguay 1960 only - Jan 17 0:00 1:00 S
+Rule Uruguay 1960 only - Mar 6 0:00 0 -
+Rule Uruguay 1965 1967 - Apr Sun>=1 0:00 1:00 S
+Rule Uruguay 1965 only - Sep 26 0:00 0 -
+Rule Uruguay 1966 1967 - Oct 31 0:00 0 -
+Rule Uruguay 1968 1970 - May 27 0:00 0:30 HS
+Rule Uruguay 1968 1970 - Dec 2 0:00 0 -
+Rule Uruguay 1972 only - Apr 24 0:00 1:00 S
+Rule Uruguay 1972 only - Aug 15 0:00 0 -
+Rule Uruguay 1974 only - Mar 10 0:00 0:30 HS
+Rule Uruguay 1974 only - Dec 22 0:00 1:00 S
+Rule Uruguay 1976 only - Oct 1 0:00 0 -
+Rule Uruguay 1977 only - Dec 4 0:00 1:00 S
+Rule Uruguay 1978 only - Apr 1 0:00 0 -
+Rule Uruguay 1979 only - Oct 1 0:00 1:00 S
+Rule Uruguay 1980 only - May 1 0:00 0 -
+Rule Uruguay 1987 only - Dec 14 0:00 1:00 S
+Rule Uruguay 1988 only - Mar 14 0:00 0 -
+Rule Uruguay 1988 only - Dec 11 0:00 1:00 S
+Rule Uruguay 1989 only - Mar 12 0:00 0 -
+Rule Uruguay 1989 only - Oct 29 0:00 1:00 S
+# Shanks & Pottenger say no DST was observed in 1990/1 and 1991/2,
+# and that 1992/3's DST was from 10-25 to 03-01. Go with IATA.
+Rule Uruguay 1990 1992 - Mar Sun>=1 0:00 0 -
+Rule Uruguay 1990 1991 - Oct Sun>=21 0:00 1:00 S
+Rule Uruguay 1992 only - Oct 18 0:00 1:00 S
+Rule Uruguay 1993 only - Feb 28 0:00 0 -
+# From Eduardo Cota (2004-09-20):
+# The uruguayan government has decreed a change in the local time....
+# http://www.presidencia.gub.uy/decretos/2004091502.htm
+Rule Uruguay 2004 only - Sep 19 0:00 1:00 S
+# From Steffen Thorsen (2005-03-11):
+# Uruguay's DST was scheduled to end on Sunday, 2005-03-13, but in order to
+# save energy ... it was postponed two weeks....
+# http://www.presidencia.gub.uy/_Web/noticias/2005/03/2005031005.htm
+Rule Uruguay 2005 only - Mar 27 2:00 0 -
+# From Eduardo Cota (2005-09-27):
+# http://www.presidencia.gub.uy/_Web/decretos/2005/09/CM%20119_09%2009%202005_00001.PDF
+# This means that from 2005-10-09 at 02:00 local time, until 2006-03-12 at
+# 02:00 local time, official time in Uruguay will be at GMT -2.
+Rule Uruguay 2005 only - Oct 9 2:00 1:00 S
+Rule Uruguay 2006 only - Mar 12 2:00 0 -
+# From Jesper Norgaard Welen (2006-09-06):
+# http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF
+Rule Uruguay 2006 max - Oct Sun>=1 2:00 1:00 S
+Rule Uruguay 2007 max - Mar Sun>=8 2:00 0 -
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Montevideo -3:44:44 - LMT 1898 Jun 28
+ -3:44:44 - MMT 1920 May 1 # Montevideo MT
+ -3:30 Uruguay UY%sT 1942 Dec 14 # Uruguay Time
+ -3:00 Uruguay UY%sT
+
+# Venezuela
+#
+# From John Stainforth (2007-11-28):
+# ... the change for Venezuela originally expected for 2007-12-31 has
+# been brought forward to 2007-12-09. The official announcement was
+# published today in the "Gaceta Oficial de la Republica Bolivariana
+# de Venezuela, numero 38.819" (official document for all laws or
+# resolution publication)
+# http://www.globovision.com/news.php?nid=72208
+
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Caracas -4:27:44 - LMT 1890
+ -4:27:40 - CMT 1912 Feb 12 # Caracas Mean Time?
+ -4:30 - VET 1965 # Venezuela Time
+ -4:00 - VET 2007 Dec 9 03:00
+ -4:30 - VET
diff --git a/tools/zoneinfo/tzdata2009s/systemv b/tools/zoneinfo/tzdata2009s/systemv
new file mode 100644
index 0000000..767388d
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/systemv
@@ -0,0 +1,39 @@
+# <pre>
+# @(#)systemv 8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# Old rules, should the need arise.
+# No attempt is made to handle Newfoundland, since it cannot be expressed
+# using the System V "TZ" scheme (half-hour offset), or anything outside
+# North America (no support for non-standard DST start/end dates), nor
+# the changes in the DST rules in the US after 1976 (which occurred after
+# the old rules were written).
+#
+# If you need the old rules, uncomment ## lines.
+# Compile this *without* leap second correction for true conformance.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule SystemV min 1973 - Apr lastSun 2:00 1:00 D
+Rule SystemV min 1973 - Oct lastSun 2:00 0 S
+Rule SystemV 1974 only - Jan 6 2:00 1:00 D
+Rule SystemV 1974 only - Nov lastSun 2:00 0 S
+Rule SystemV 1975 only - Feb 23 2:00 1:00 D
+Rule SystemV 1975 only - Oct lastSun 2:00 0 S
+Rule SystemV 1976 max - Apr lastSun 2:00 1:00 D
+Rule SystemV 1976 max - Oct lastSun 2:00 0 S
+
+# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
+## Zone SystemV/AST4ADT -4:00 SystemV A%sT
+## Zone SystemV/EST5EDT -5:00 SystemV E%sT
+## Zone SystemV/CST6CDT -6:00 SystemV C%sT
+## Zone SystemV/MST7MDT -7:00 SystemV M%sT
+## Zone SystemV/PST8PDT -8:00 SystemV P%sT
+## Zone SystemV/YST9YDT -9:00 SystemV Y%sT
+## Zone SystemV/AST4 -4:00 - AST
+## Zone SystemV/EST5 -5:00 - EST
+## Zone SystemV/CST6 -6:00 - CST
+## Zone SystemV/MST7 -7:00 - MST
+## Zone SystemV/PST8 -8:00 - PST
+## Zone SystemV/YST9 -9:00 - YST
+## Zone SystemV/HST10 -10:00 - HST
diff --git a/tools/zoneinfo/tzdata2008h/yearistype.sh b/tools/zoneinfo/tzdata2009s/yearistype.sh
similarity index 100%
rename from tools/zoneinfo/tzdata2008h/yearistype.sh
rename to tools/zoneinfo/tzdata2009s/yearistype.sh
diff --git a/tools/zoneinfo/tzdata2009s/zone.tab b/tools/zoneinfo/tzdata2009s/zone.tab
new file mode 100644
index 0000000..0f91941
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/zone.tab
@@ -0,0 +1,429 @@
+# <pre>
+# @(#)zone.tab 8.29
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+#
+# TZ zone descriptions
+#
+# From Paul Eggert (1996-08-05):
+#
+# This file contains a table with the following columns:
+# 1. ISO 3166 2-character country code. See the file `iso3166.tab'.
+# 2. Latitude and longitude of the zone's principal location
+# in ISO 6709 sign-degrees-minutes-seconds format,
+# either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS,
+# first latitude (+ is north), then longitude (+ is east).
+# 3. Zone name used in value of TZ environment variable.
+# 4. Comments; present if and only if the country has multiple rows.
+#
+# Columns are separated by a single tab.
+# The table is sorted first by country, then an order within the country that
+# (1) makes some geographical sense, and
+# (2) puts the most populous zones first, where that does not contradict (1).
+#
+# Lines beginning with `#' are comments.
+#
+#country-
+#code coordinates TZ comments
+AD +4230+00131 Europe/Andorra
+AE +2518+05518 Asia/Dubai
+AF +3431+06912 Asia/Kabul
+AG +1703-06148 America/Antigua
+AI +1812-06304 America/Anguilla
+AL +4120+01950 Europe/Tirane
+AM +4011+04430 Asia/Yerevan
+AN +1211-06900 America/Curacao
+AO -0848+01314 Africa/Luanda
+AQ -7750+16636 Antarctica/McMurdo McMurdo Station, Ross Island
+AQ -9000+00000 Antarctica/South_Pole Amundsen-Scott Station, South Pole
+AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
+AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
+AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
+AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
+AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
+AQ -7824+10654 Antarctica/Vostok Vostok Station, S Magnetic Pole
+AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Terre Adelie
+AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
+AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
+AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
+AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
+AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
+AR -2649-06513 America/Argentina/Tucuman Tucuman (TM)
+AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
+AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
+AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
+AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
+AR -3319-06621 America/Argentina/San_Luis San Luis (SL)
+AR -5138-06913 America/Argentina/Rio_Gallegos Santa Cruz (SC)
+AR -5448-06818 America/Argentina/Ushuaia Tierra del Fuego (TF)
+AS -1416-17042 Pacific/Pago_Pago
+AT +4813+01620 Europe/Vienna
+AU -3133+15905 Australia/Lord_Howe Lord Howe Island
+AU -4253+14719 Australia/Hobart Tasmania - most locations
+AU -3956+14352 Australia/Currie Tasmania - King Island
+AU -3749+14458 Australia/Melbourne Victoria
+AU -3352+15113 Australia/Sydney New South Wales - most locations
+AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
+AU -2728+15302 Australia/Brisbane Queensland - most locations
+AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
+AU -3455+13835 Australia/Adelaide South Australia
+AU -1228+13050 Australia/Darwin Northern Territory
+AU -3157+11551 Australia/Perth Western Australia - most locations
+AU -3143+12852 Australia/Eucla Western Australia - Eucla area
+AW +1230-06958 America/Aruba
+AX +6006+01957 Europe/Mariehamn
+AZ +4023+04951 Asia/Baku
+BA +4352+01825 Europe/Sarajevo
+BB +1306-05937 America/Barbados
+BD +2343+09025 Asia/Dhaka
+BE +5050+00420 Europe/Brussels
+BF +1222-00131 Africa/Ouagadougou
+BG +4241+02319 Europe/Sofia
+BH +2623+05035 Asia/Bahrain
+BI -0323+02922 Africa/Bujumbura
+BJ +0629+00237 Africa/Porto-Novo
+BL +1753-06251 America/St_Barthelemy
+BM +3217-06446 Atlantic/Bermuda
+BN +0456+11455 Asia/Brunei
+BO -1630-06809 America/La_Paz
+BR -0351-03225 America/Noronha Atlantic islands
+BR -0127-04829 America/Belem Amapa, E Para
+BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
+BR -0803-03454 America/Recife Pernambuco
+BR -0712-04812 America/Araguaina Tocantins
+BR -0940-03543 America/Maceio Alagoas, Sergipe
+BR -1259-03831 America/Bahia Bahia
+BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
+BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
+BR -1535-05605 America/Cuiaba Mato Grosso
+BR -0226-05452 America/Santarem W Para
+BR -0846-06354 America/Porto_Velho Rondonia
+BR +0249-06040 America/Boa_Vista Roraima
+BR -0308-06001 America/Manaus E Amazonas
+BR -0640-06952 America/Eirunepe W Amazonas
+BR -0958-06748 America/Rio_Branco Acre
+BS +2505-07721 America/Nassau
+BT +2728+08939 Asia/Thimphu
+BW -2439+02555 Africa/Gaborone
+BY +5354+02734 Europe/Minsk
+BZ +1730-08812 America/Belize
+CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
+CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (most places), PEI
+CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
+CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
+CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
+CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
+CA +4531-07334 America/Montreal Eastern Time - Quebec - most locations
+CA +4339-07923 America/Toronto Eastern Time - Ontario - most locations
+CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
+CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
+CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
+CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
+CA +744144-0944945 America/Resolute Eastern Standard Time - Resolute, Nunavut
+CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
+CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
+CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
+CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
+CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
+CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
+CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
+CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
+CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
+CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
+CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
+CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
+CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
+CA +6404-13925 America/Dawson Pacific Time - north Yukon
+CC -1210+09655 Indian/Cocos
+CD -0418+01518 Africa/Kinshasa west Dem. Rep. of Congo
+CD -1140+02728 Africa/Lubumbashi east Dem. Rep. of Congo
+CF +0422+01835 Africa/Bangui
+CG -0416+01517 Africa/Brazzaville
+CH +4723+00832 Europe/Zurich
+CI +0519-00402 Africa/Abidjan
+CK -2114-15946 Pacific/Rarotonga
+CL -3327-07040 America/Santiago most locations
+CL -2709-10926 Pacific/Easter Easter Island & Sala y Gomez
+CM +0403+00942 Africa/Douala
+CN +3114+12128 Asia/Shanghai east China - Beijing, Guangdong, Shanghai, etc.
+CN +4545+12641 Asia/Harbin Heilongjiang (except Mohe), Jilin
+CN +2934+10635 Asia/Chongqing central China - Sichuan, Yunnan, Guangxi, Shaanxi, Guizhou, etc.
+CN +4348+08735 Asia/Urumqi most of Tibet & Xinjiang
+CN +3929+07559 Asia/Kashgar west Tibet & Xinjiang
+CO +0436-07405 America/Bogota
+CR +0956-08405 America/Costa_Rica
+CU +2308-08222 America/Havana
+CV +1455-02331 Atlantic/Cape_Verde
+CX -1025+10543 Indian/Christmas
+CY +3510+03322 Asia/Nicosia
+CZ +5005+01426 Europe/Prague
+DE +5230+01322 Europe/Berlin
+DJ +1136+04309 Africa/Djibouti
+DK +5540+01235 Europe/Copenhagen
+DM +1518-06124 America/Dominica
+DO +1828-06954 America/Santo_Domingo
+DZ +3647+00303 Africa/Algiers
+EC -0210-07950 America/Guayaquil mainland
+EC -0054-08936 Pacific/Galapagos Galapagos Islands
+EE +5925+02445 Europe/Tallinn
+EG +3003+03115 Africa/Cairo
+EH +2709-01312 Africa/El_Aaiun
+ER +1520+03853 Africa/Asmara
+ES +4024-00341 Europe/Madrid mainland
+ES +3553-00519 Africa/Ceuta Ceuta & Melilla
+ES +2806-01524 Atlantic/Canary Canary Islands
+ET +0902+03842 Africa/Addis_Ababa
+FI +6010+02458 Europe/Helsinki
+FJ -1808+17825 Pacific/Fiji
+FK -5142-05751 Atlantic/Stanley
+FM +0725+15147 Pacific/Truk Truk (Chuuk) and Yap
+FM +0658+15813 Pacific/Ponape Ponape (Pohnpei)
+FM +0519+16259 Pacific/Kosrae Kosrae
+FO +6201-00646 Atlantic/Faroe
+FR +4852+00220 Europe/Paris
+GA +0023+00927 Africa/Libreville
+GB +513030-0000731 Europe/London
+GD +1203-06145 America/Grenada
+GE +4143+04449 Asia/Tbilisi
+GF +0456-05220 America/Cayenne
+GG +4927-00232 Europe/Guernsey
+GH +0533-00013 Africa/Accra
+GI +3608-00521 Europe/Gibraltar
+GL +6411-05144 America/Godthab most locations
+GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
+GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
+GL +7634-06847 America/Thule Thule / Pituffik
+GM +1328-01639 Africa/Banjul
+GN +0931-01343 Africa/Conakry
+GP +1614-06132 America/Guadeloupe
+GQ +0345+00847 Africa/Malabo
+GR +3758+02343 Europe/Athens
+GS -5416-03632 Atlantic/South_Georgia
+GT +1438-09031 America/Guatemala
+GU +1328+14445 Pacific/Guam
+GW +1151-01535 Africa/Bissau
+GY +0648-05810 America/Guyana
+HK +2217+11409 Asia/Hong_Kong
+HN +1406-08713 America/Tegucigalpa
+HR +4548+01558 Europe/Zagreb
+HT +1832-07220 America/Port-au-Prince
+HU +4730+01905 Europe/Budapest
+ID -0610+10648 Asia/Jakarta Java & Sumatra
+ID -0002+10920 Asia/Pontianak west & central Borneo
+ID -0507+11924 Asia/Makassar east & south Borneo, Celebes, Bali, Nusa Tengarra, west Timor
+ID -0232+14042 Asia/Jayapura Irian Jaya & the Moluccas
+IE +5320-00615 Europe/Dublin
+IL +3146+03514 Asia/Jerusalem
+IM +5409-00428 Europe/Isle_of_Man
+IN +2232+08822 Asia/Kolkata
+IO -0720+07225 Indian/Chagos
+IQ +3321+04425 Asia/Baghdad
+IR +3540+05126 Asia/Tehran
+IS +6409-02151 Atlantic/Reykjavik
+IT +4154+01229 Europe/Rome
+JE +4912-00207 Europe/Jersey
+JM +1800-07648 America/Jamaica
+JO +3157+03556 Asia/Amman
+JP +353916+1394441 Asia/Tokyo
+KE -0117+03649 Africa/Nairobi
+KG +4254+07436 Asia/Bishkek
+KH +1133+10455 Asia/Phnom_Penh
+KI +0125+17300 Pacific/Tarawa Gilbert Islands
+KI -0308-17105 Pacific/Enderbury Phoenix Islands
+KI +0152-15720 Pacific/Kiritimati Line Islands
+KM -1141+04316 Indian/Comoro
+KN +1718-06243 America/St_Kitts
+KP +3901+12545 Asia/Pyongyang
+KR +3733+12658 Asia/Seoul
+KW +2920+04759 Asia/Kuwait
+KY +1918-08123 America/Cayman
+KZ +4315+07657 Asia/Almaty most locations
+KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
+KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
+KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
+KZ +5113+05121 Asia/Oral West Kazakhstan
+LA +1758+10236 Asia/Vientiane
+LB +3353+03530 Asia/Beirut
+LC +1401-06100 America/St_Lucia
+LI +4709+00931 Europe/Vaduz
+LK +0656+07951 Asia/Colombo
+LR +0618-01047 Africa/Monrovia
+LS -2928+02730 Africa/Maseru
+LT +5441+02519 Europe/Vilnius
+LU +4936+00609 Europe/Luxembourg
+LV +5657+02406 Europe/Riga
+LY +3254+01311 Africa/Tripoli
+MA +3339-00735 Africa/Casablanca
+MC +4342+00723 Europe/Monaco
+MD +4700+02850 Europe/Chisinau
+ME +4226+01916 Europe/Podgorica
+MF +1804-06305 America/Marigot
+MG -1855+04731 Indian/Antananarivo
+MH +0709+17112 Pacific/Majuro most locations
+MH +0905+16720 Pacific/Kwajalein Kwajalein
+MK +4159+02126 Europe/Skopje
+ML +1239-00800 Africa/Bamako
+MM +1647+09610 Asia/Rangoon
+MN +4755+10653 Asia/Ulaanbaatar most locations
+MN +4801+09139 Asia/Hovd Bayan-Olgiy, Govi-Altai, Hovd, Uvs, Zavkhan
+MN +4804+11430 Asia/Choibalsan Dornod, Sukhbaatar
+MO +2214+11335 Asia/Macau
+MP +1512+14545 Pacific/Saipan
+MQ +1436-06105 America/Martinique
+MR +1806-01557 Africa/Nouakchott
+MS +1643-06213 America/Montserrat
+MT +3554+01431 Europe/Malta
+MU -2010+05730 Indian/Mauritius
+MV +0410+07330 Indian/Maldives
+MW -1547+03500 Africa/Blantyre
+MX +1924-09909 America/Mexico_City Central Time - most locations
+MX +2105-08646 America/Cancun Central Time - Quintana Roo
+MX +2058-08937 America/Merida Central Time - Campeche, Yucatan
+MX +2540-10019 America/Monterrey Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas
+MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
+MX +2838-10605 America/Chihuahua Mountain Time - Chihuahua
+MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
+MX +3232-11701 America/Tijuana Pacific Time
+MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
+MY +0133+11020 Asia/Kuching Sabah & Sarawak
+MZ -2558+03235 Africa/Maputo
+NA -2234+01706 Africa/Windhoek
+NC -2216+16627 Pacific/Noumea
+NE +1331+00207 Africa/Niamey
+NF -2903+16758 Pacific/Norfolk
+NG +0627+00324 Africa/Lagos
+NI +1209-08617 America/Managua
+NL +5222+00454 Europe/Amsterdam
+NO +5955+01045 Europe/Oslo
+NP +2743+08519 Asia/Kathmandu
+NR -0031+16655 Pacific/Nauru
+NU -1901-16955 Pacific/Niue
+NZ -3652+17446 Pacific/Auckland most locations
+NZ -4357-17633 Pacific/Chatham Chatham Islands
+OM +2336+05835 Asia/Muscat
+PA +0858-07932 America/Panama
+PE -1203-07703 America/Lima
+PF -1732-14934 Pacific/Tahiti Society Islands
+PF -0900-13930 Pacific/Marquesas Marquesas Islands
+PF -2308-13457 Pacific/Gambier Gambier Islands
+PG -0930+14710 Pacific/Port_Moresby
+PH +1435+12100 Asia/Manila
+PK +2452+06703 Asia/Karachi
+PL +5215+02100 Europe/Warsaw
+PM +4703-05620 America/Miquelon
+PN -2504-13005 Pacific/Pitcairn
+PR +182806-0660622 America/Puerto_Rico
+PS +3130+03428 Asia/Gaza
+PT +3843-00908 Europe/Lisbon mainland
+PT +3238-01654 Atlantic/Madeira Madeira Islands
+PT +3744-02540 Atlantic/Azores Azores
+PW +0720+13429 Pacific/Palau
+PY -2516-05740 America/Asuncion
+QA +2517+05132 Asia/Qatar
+RE -2052+05528 Indian/Reunion
+RO +4426+02606 Europe/Bucharest
+RS +4450+02030 Europe/Belgrade
+RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
+RU +5545+03735 Europe/Moscow Moscow+00 - west Russia
+RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
+RU +5312+05009 Europe/Samara Moscow+01 - Samara, Udmurtia
+RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
+RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
+RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
+RU +5345+08707 Asia/Novokuznetsk Moscow+03 - Novokuznetsk
+RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
+RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
+RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
+RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
+RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
+RU +5934+15048 Asia/Magadan Moscow+08 - Magadan
+RU +5301+15839 Asia/Kamchatka Moscow+09 - Kamchatka
+RU +6445+17729 Asia/Anadyr Moscow+10 - Bering Sea
+RW -0157+03004 Africa/Kigali
+SA +2438+04643 Asia/Riyadh
+SB -0932+16012 Pacific/Guadalcanal
+SC -0440+05528 Indian/Mahe
+SD +1536+03232 Africa/Khartoum
+SE +5920+01803 Europe/Stockholm
+SG +0117+10351 Asia/Singapore
+SH -1555-00542 Atlantic/St_Helena
+SI +4603+01431 Europe/Ljubljana
+SJ +7800+01600 Arctic/Longyearbyen
+SK +4809+01707 Europe/Bratislava
+SL +0830-01315 Africa/Freetown
+SM +4355+01228 Europe/San_Marino
+SN +1440-01726 Africa/Dakar
+SO +0204+04522 Africa/Mogadishu
+SR +0550-05510 America/Paramaribo
+ST +0020+00644 Africa/Sao_Tome
+SV +1342-08912 America/El_Salvador
+SY +3330+03618 Asia/Damascus
+SZ -2618+03106 Africa/Mbabane
+TC +2128-07108 America/Grand_Turk
+TD +1207+01503 Africa/Ndjamena
+TF -492110+0701303 Indian/Kerguelen
+TG +0608+00113 Africa/Lome
+TH +1345+10031 Asia/Bangkok
+TJ +3835+06848 Asia/Dushanbe
+TK -0922-17114 Pacific/Fakaofo
+TL -0833+12535 Asia/Dili
+TM +3757+05823 Asia/Ashgabat
+TN +3648+01011 Africa/Tunis
+TO -2110-17510 Pacific/Tongatapu
+TR +4101+02858 Europe/Istanbul
+TT +1039-06131 America/Port_of_Spain
+TV -0831+17913 Pacific/Funafuti
+TW +2503+12130 Asia/Taipei
+TZ -0648+03917 Africa/Dar_es_Salaam
+UA +5026+03031 Europe/Kiev most locations
+UA +4837+02218 Europe/Uzhgorod Ruthenia
+UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
+UA +4457+03406 Europe/Simferopol central Crimea
+UG +0019+03225 Africa/Kampala
+UM +1645-16931 Pacific/Johnston Johnston Atoll
+UM +2813-17722 Pacific/Midway Midway Islands
+UM +1917+16637 Pacific/Wake Wake Island
+US +404251-0740023 America/New_York Eastern Time
+US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
+US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
+US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
+US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
+US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
+US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
+US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
+US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
+US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
+US +415100-0873900 America/Chicago Central Time
+US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
+US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
+US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
+US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
+US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
+US +394421-1045903 America/Denver Mountain Time
+US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
+US +364708-1084111 America/Shiprock Mountain Time - Navajo
+US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona
+US +340308-1181434 America/Los_Angeles Pacific Time
+US +611305-1495401 America/Anchorage Alaska Time
+US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
+US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
+US +643004-1652423 America/Nome Alaska Time - west Alaska
+US +515248-1763929 America/Adak Aleutian Islands
+US +211825-1575130 Pacific/Honolulu Hawaii
+UY -3453-05611 America/Montevideo
+UZ +3940+06648 Asia/Samarkand west Uzbekistan
+UZ +4120+06918 Asia/Tashkent east Uzbekistan
+VA +415408+0122711 Europe/Vatican
+VC +1309-06114 America/St_Vincent
+VE +1030-06656 America/Caracas
+VG +1827-06437 America/Tortola
+VI +1821-06456 America/St_Thomas
+VN +1045+10640 Asia/Ho_Chi_Minh
+VU -1740+16825 Pacific/Efate
+WF -1318-17610 Pacific/Wallis
+WS -1350-17144 Pacific/Apia
+YE +1245+04512 Asia/Aden
+YT -1247+04514 Indian/Mayotte
+ZA -2615+02800 Africa/Johannesburg
+ZM -1525+02817 Africa/Lusaka
+ZW -1750+03103 Africa/Harare