diff --git a/build-data/packages/dpdk.mk b/build-data/packages/dpdk.mk
index ddfb8fd..92eb631 100644
--- a/build-data/packages/dpdk.mk
+++ b/build-data/packages/dpdk.mk
@@ -1,3 +1,15 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
 
 ifneq (,$(findstring debug,$(TAG)))
 	DPDK_DEBUG=y
diff --git a/build-data/packages/g2.mk b/build-data/packages/g2.mk
index 9b760e6..1e9d77a 100644
--- a/build-data/packages/g2.mk
+++ b/build-data/packages/g2.mk
@@ -1,3 +1,16 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 g2_source = src
 
 g2_configure_args = --disable-vlib --disable-svm --enable-g2
diff --git a/build-data/packages/gmod.mk b/build-data/packages/gmod.mk
index 6fa7e0f..77dfaa2 100644
--- a/build-data/packages/gmod.mk
+++ b/build-data/packages/gmod.mk
@@ -1,3 +1,16 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 gmod_configure_depend = vpp-install
 
 gmod_configure_args = --libdir=$(PACKAGE_INSTALL_DIR)/$(arch_lib_dir)/ganglia
diff --git a/build-data/packages/perftool.mk b/build-data/packages/perftool.mk
index e582c31..992cf53 100644
--- a/build-data/packages/perftool.mk
+++ b/build-data/packages/perftool.mk
@@ -1,3 +1,16 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 perftool_source = src
 
 perftool_configure_args = --disable-vlib --disable-svm --enable-perftool
diff --git a/build-data/packages/sample-plugin.mk b/build-data/packages/sample-plugin.mk
index fd1ee32..e26ff9d 100644
--- a/build-data/packages/sample-plugin.mk
+++ b/build-data/packages/sample-plugin.mk
@@ -1,3 +1,16 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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-plugin_source = src
 sample-plugin_configure_subdir = examples/sample-plugin
 sample-plugin_configure_depend = vpp-install
diff --git a/build-data/packages/src.mk b/build-data/packages/src.mk
index e69de29..7836ce2 100644
--- a/build-data/packages/src.mk
+++ b/build-data/packages/src.mk
@@ -0,0 +1,12 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
diff --git a/build-data/packages/vpp-platform-scripts.mk b/build-data/packages/vpp-platform-scripts.mk
index 792d600..619add7 100644
--- a/build-data/packages/vpp-platform-scripts.mk
+++ b/build-data/packages/vpp-platform-scripts.mk
@@ -1 +1,13 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
 #
diff --git a/build-data/packages/vpp.mk b/build-data/packages/vpp.mk
index a31ae7f..4122591 100644
--- a/build-data/packages/vpp.mk
+++ b/build-data/packages/vpp.mk
@@ -1,3 +1,16 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 vpp_source = src
 
 ifeq ($($(PLATFORM)_dpdk_shared_lib),yes)
diff --git a/build-data/platforms/qppc.mk b/build-data/platforms/qppc.mk
index 983684f..5bc6155 100644
--- a/build-data/platforms/qppc.mk
+++ b/build-data/platforms/qppc.mk
@@ -1,3 +1,16 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 # Qemu "p-series" powerpc64 
 
 qppc_os = linux-gnu
diff --git a/build-root/bootstrap.sh b/build-root/bootstrap.sh
index 2949c18..3f71cef 100755
--- a/build-root/bootstrap.sh
+++ b/build-root/bootstrap.sh
@@ -1,5 +1,18 @@
 #!/bin/bash
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 build_root=`pwd`
 cd ../
 wsroot=`pwd`
diff --git a/build-root/build-config.mk.README b/build-root/build-config.mk.README
index 8b8c87d..c3cee32 100644
--- a/build-root/build-config.mk.README
+++ b/build-root/build-config.mk.README
@@ -1,3 +1,16 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 # To specify directories to find sources, build/packages/*.mk
 # and build/platforms.mk
 # SOURCE_PATH = PATH1 PATH2 ...
diff --git a/build-root/config.site b/build-root/config.site
index 9f60708..bfdabcb 100644
--- a/build-root/config.site
+++ b/build-root/config.site
@@ -1,3 +1,17 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
+
 ######################################################################
 # glibc
 ######################################################################
diff --git a/build-root/copyimg b/build-root/copyimg
index e5e3fc2..d693dfe 100755
--- a/build-root/copyimg
+++ b/build-root/copyimg
@@ -1,5 +1,19 @@
 #!/bin/sh
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
+
 if [ $# -lt 2 ]; then
     cat - <<EOF
 $0 FROM-DIR TO-DIR ENVIRONMENT
diff --git a/build-root/packages/src.mk b/build-root/packages/src.mk
index db48ed5..4f7e823 100644
--- a/build-root/packages/src.mk
+++ b/build-root/packages/src.mk
@@ -1,3 +1,16 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 # nothing
 
 
diff --git a/build-root/packages/tools.mk b/build-root/packages/tools.mk
index d64a795..7db04e6 100644
--- a/build-root/packages/tools.mk
+++ b/build-root/packages/tools.mk
@@ -1,3 +1,16 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 tools_source = src
 tools_configure_args = --disable-vlib --disable-svm --disable-japi
 
diff --git a/build-root/packages/vppinfra.mk b/build-root/packages/vppinfra.mk
index db48ed5..40d9c73 100644
--- a/build-root/packages/vppinfra.mk
+++ b/build-root/packages/vppinfra.mk
@@ -1,3 +1,17 @@
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
+
 # nothing
 
 
diff --git a/build-root/scripts/checkstyle.sh b/build-root/scripts/checkstyle.sh
index f4ea79a..f2f118c 100755
--- a/build-root/scripts/checkstyle.sh
+++ b/build-root/scripts/checkstyle.sh
@@ -1,5 +1,18 @@
 #!/bin/bash
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 VPP_DIR=`dirname $0`/../../
 EXIT_CODE=0
 FIX="0"
diff --git a/build-root/scripts/csit-test-branch b/build-root/scripts/csit-test-branch
index 42be723..23cfae1 100755
--- a/build-root/scripts/csit-test-branch
+++ b/build-root/scripts/csit-test-branch
@@ -1,2 +1,16 @@
 #!/bin/sh
-echo latest
\ No newline at end of file
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
+
+echo latest
diff --git a/build-root/scripts/find-api-core-contents b/build-root/scripts/find-api-core-contents
index c1af69d..8e24584 100755
--- a/build-root/scripts/find-api-core-contents
+++ b/build-root/scripts/find-api-core-contents
@@ -1,5 +1,19 @@
 #!/bin/bash
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
+
 for i in $(find ${1}/vpp/share/vpp/api/core -name *.api.json -type f -print); do
     echo ../${i} /usr/share/vpp/api/ >> ${2}
 done
diff --git a/build-root/scripts/find-api-lib-contents b/build-root/scripts/find-api-lib-contents
index 562db7b..b074266 100755
--- a/build-root/scripts/find-api-lib-contents
+++ b/build-root/scripts/find-api-lib-contents
@@ -1,5 +1,18 @@
 #!/bin/bash
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 for i in $(find ${1}/vnet -name *.api.json -type f -print); do
     echo ../${i} /usr/share/vpp/api/ >> ${2}
 done
diff --git a/build-root/scripts/find-dev-contents b/build-root/scripts/find-dev-contents
index d4f7b63..623121e 100755
--- a/build-root/scripts/find-dev-contents
+++ b/build-root/scripts/find-dev-contents
@@ -1,5 +1,18 @@
 #!/bin/bash
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 # includes
 paths=`find $1/*/include -type f -print | grep -v '/dpdk/include/'`
 rm -f $2
diff --git a/build-root/scripts/find-plugins-contents b/build-root/scripts/find-plugins-contents
index ae2a427..394964c 100755
--- a/build-root/scripts/find-plugins-contents
+++ b/build-root/scripts/find-plugins-contents
@@ -1,5 +1,18 @@
 #!/bin/bash
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 rm -f $2
 
 for i in ${1}/vpp/lib64/vpp_plugins/*.so; do
diff --git a/build-root/scripts/find-vpp-api-java-contents b/build-root/scripts/find-vpp-api-java-contents
index 5f1bf19..6309c6c 100755
--- a/build-root/scripts/find-vpp-api-java-contents
+++ b/build-root/scripts/find-vpp-api-java-contents
@@ -1,5 +1,18 @@
 #!/bin/bash
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 rm -f $2
 
 for i in $(find ${1}/vpp/share/java/ -type f -print); do
diff --git a/build-root/scripts/find-vpp-api-lua-contents b/build-root/scripts/find-vpp-api-lua-contents
index f1173db..576bbb8 100755
--- a/build-root/scripts/find-vpp-api-lua-contents
+++ b/build-root/scripts/find-vpp-api-lua-contents
@@ -1,5 +1,18 @@
 #!/bin/bash
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 #i for now put everything into examples directory
 
 echo ../../src/vpp-api/lua /usr/share/vpp/examples > ${2}
diff --git a/build-root/scripts/find-vpp-api-python-contents b/build-root/scripts/find-vpp-api-python-contents
index 819c912..f6de6f2 100755
--- a/build-root/scripts/find-vpp-api-python-contents
+++ b/build-root/scripts/find-vpp-api-python-contents
@@ -1,5 +1,18 @@
 #!/bin/bash
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 rm -f $2
 
 for i in $(find ${1}/vpp/lib/python2.7/site-packages/ -type f -print); do
diff --git a/build-root/scripts/generate-deb-changelog b/build-root/scripts/generate-deb-changelog
index 7bdc633..d3112f7 100755
--- a/build-root/scripts/generate-deb-changelog
+++ b/build-root/scripts/generate-deb-changelog
@@ -1,5 +1,18 @@
 #!/bin/bash
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 CHANGELOG=deb/debian/changelog
 DIST=unstable
 FIRST=1
diff --git a/build-root/scripts/remove-rpath b/build-root/scripts/remove-rpath
index 3912b37..3e20b06 100755
--- a/build-root/scripts/remove-rpath
+++ b/build-root/scripts/remove-rpath
@@ -1,5 +1,18 @@
 #!/bin/bash
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 if [ -z $1 ]; then
 	echo "Please specify path"
 	exit 1
diff --git a/extras/emacs/README b/extras/emacs/README
index 1f09a3f..2f1bd6c 100644
--- a/extras/emacs/README
+++ b/extras/emacs/README
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 How to construct a complete plugin using the emacs skeletons
 
 0. Install open-vpp, including the development package.
diff --git a/extras/emacs/cli-cmd-skel.el b/extras/emacs/cli-cmd-skel.el
index cf8658c..57c15c8 100644
--- a/extras/emacs/cli-cmd-skel.el
+++ b/extras/emacs/cli-cmd-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;;; cli-cmd-skel.el - cli command skeleton
 
 (require 'skeleton)
diff --git a/extras/emacs/config-skel.el b/extras/emacs/config-skel.el
index dc2ec38..0fb8241 100644
--- a/extras/emacs/config-skel.el
+++ b/extras/emacs/config-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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-skel.el - config function command skeleton
 
 (require 'skeleton)
diff --git a/extras/emacs/dual-loop-skel.el b/extras/emacs/dual-loop-skel.el
index b23d65a..97d63e0 100644
--- a/extras/emacs/dual-loop-skel.el
+++ b/extras/emacs/dual-loop-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;;; dual-loop-skel.el - Eliotic dual-loop node skeleton
 
 (require 'skeleton)
diff --git a/extras/emacs/elog-4-int-skel.el b/extras/emacs/elog-4-int-skel.el
index fda412a..0054d89 100644
--- a/extras/emacs/elog-4-int-skel.el
+++ b/extras/emacs/elog-4-int-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;;; elog-4-int-skel.el - 4 integer elog skeleton
 
 (require 'skeleton)
diff --git a/extras/emacs/elog-4-int-track-skel.el b/extras/emacs/elog-4-int-track-skel.el
index 506cc3a..880035a 100644
--- a/extras/emacs/elog-4-int-track-skel.el
+++ b/extras/emacs/elog-4-int-track-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;;; elog-4-int-skel.el - 4 integer elog skeleton
 
 (require 'skeleton)
diff --git a/extras/emacs/elog-enum-skel.el b/extras/emacs/elog-enum-skel.el
index 836ce86..bc2bb94 100644
--- a/extras/emacs/elog-enum-skel.el
+++ b/extras/emacs/elog-enum-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;;; elog-enum-skel.el - enum elog skeleton
 
 (require 'skeleton)
diff --git a/extras/emacs/elog-one-datum-skel.el b/extras/emacs/elog-one-datum-skel.el
index 11f8389..e60a993 100644
--- a/extras/emacs/elog-one-datum-skel.el
+++ b/extras/emacs/elog-one-datum-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;;; elog-one-datum-skel.el - single u32 datum elog skeleton
 
 (require 'skeleton)
diff --git a/extras/emacs/fix-coding-style.el b/extras/emacs/fix-coding-style.el
index 0bb6348..c4a7060 100755
--- a/extras/emacs/fix-coding-style.el
+++ b/extras/emacs/fix-coding-style.el
@@ -1,5 +1,18 @@
 #!/usr/bin/emacs --script
 
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;; Insert style boilerplate if it's not already there
 ;;
 ;; Breaking the string in half keeps emacs
diff --git a/extras/emacs/make-plugin.sh b/extras/emacs/make-plugin.sh
index 4985974..de5eb04 100755
--- a/extras/emacs/make-plugin.sh
+++ b/extras/emacs/make-plugin.sh
@@ -1,4 +1,18 @@
 #!/usr/bin/emacs --script
+
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 (load-file "./all-skel.el")
 (make-plugin)
 (save-some-buffers t)
diff --git a/extras/emacs/periodic-skel.el b/extras/emacs/periodic-skel.el
index a8f3ef6..b744fcd 100644
--- a/extras/emacs/periodic-skel.el
+++ b/extras/emacs/periodic-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;;; pipe-skel.el - pipelined graph node skeleton
 
 (require 'skeleton)
diff --git a/extras/emacs/pipe-skel.el b/extras/emacs/pipe-skel.el
index 911e0d0..bfae58d 100644
--- a/extras/emacs/pipe-skel.el
+++ b/extras/emacs/pipe-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;;; pipe-skel.el - pipelined graph node skeleton
 
 (require 'skeleton)
diff --git a/extras/emacs/plugin.el b/extras/emacs/plugin.el
index 4f1361a..47bffb6 100644
--- a/extras/emacs/plugin.el
+++ b/extras/emacs/plugin.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 (defun make-plugin ()
   "Create a plugin"
   (interactive)
diff --git a/extras/emacs/tunnel-c-skel.el b/extras/emacs/tunnel-c-skel.el
index a1b1757..1bd9988 100644
--- a/extras/emacs/tunnel-c-skel.el
+++ b/extras/emacs/tunnel-c-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;;; tunnel-c-skel.el - tunnel encap cli / api
 
 (require 'skeleton)
diff --git a/extras/emacs/tunnel-decap-skel.el b/extras/emacs/tunnel-decap-skel.el
index 380273b..a9a8121 100644
--- a/extras/emacs/tunnel-decap-skel.el
+++ b/extras/emacs/tunnel-decap-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;;; tunnel-decap-skel.el - tunnel decapsulation skeleton
 
 (require 'skeleton)
diff --git a/extras/emacs/tunnel-encap-skel.el b/extras/emacs/tunnel-encap-skel.el
index 9c98a59..301f8e4 100644
--- a/extras/emacs/tunnel-encap-skel.el
+++ b/extras/emacs/tunnel-encap-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;;; tunnel-encap-skel.el - tunnel interface output skeleton
 
 (require 'skeleton)
diff --git a/extras/emacs/tunnel-h-skel.el b/extras/emacs/tunnel-h-skel.el
index 067cf13..bd4aa40 100644
--- a/extras/emacs/tunnel-h-skel.el
+++ b/extras/emacs/tunnel-h-skel.el
@@ -1,3 +1,16 @@
+;;; Copyright (c) 2016 Cisco and/or its affiliates.
+;;; 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.
+
 ;;; tunnel-h-skel.el - tunnel encap header file skeleton
 
 (require 'skeleton)
diff --git a/src/scripts/version b/src/scripts/version
index d8728a9..807109e 100755
--- a/src/scripts/version
+++ b/src/scripts/version
@@ -1,5 +1,18 @@
 #!/bin/bash
 
+# Copyright (c) 2015 Cisco and/or its affiliates.
+# 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.
+
 path=$( cd "$(dirname "${BASH_SOURCE}")" ; pwd -P )
 
 cd "$path"
