Project import
diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..32ce613 --- /dev/null +++ b/Makefile
@@ -0,0 +1,136 @@ +# +# Copyright (c) 2010-2012 Nest Labs, Inc. +# All rights reserved. +# +# This document is the property of Nest. It is considered +# confidential and proprietary information. +# +# This document may not be reproduced or transmitted in any form, +# in whole or in part, without the express written permission of +# Nest. +# +# Description: +# This file is the makefile for udev, the dynamic device node +# manager for Linux. +# + +BuildConfigSpecialized := No +BuildProductSpecialized := No + +include pre.mak + +PackageName := udev + +PackageExtension := tar.bz2 +PackageSeparator := - + +PackagePatchArgs := -p1 + +PackageArchive := $(PackageName).$(PackageExtension) +PackageSourceDir := $(PackageName)$(PackageSeparator)$(PackageVersion) + +PackageBuildMakefile = $(call GenerateBuildPaths,Makefile) + +CleanPaths += $(PackageLicenseFile) + +GlibDir := sw/tps/glib +GlibIncDir := $(call GenerateResultPaths,$(GlibDir),usr/include) +GlibLibDir := $(call GenerateResultPaths,$(GlibDir),usr/lib) + +LinuxIncDir := $(call GenerateResultPaths,sw/tps/linux,include) + +all: $(PackageDefaultGoal) + +# Generate the package license contents. + +$(PackageSourceDir)/COPYING: source + +$(PackageLicenseFile): $(PackageSourceDir)/COPYING + $(copy-result) + +# Extract the source from the archive and apply patches, if any. + +$(PackageSourceDir): $(PackageArchive) $(PackagePatchPaths) + $(expand-and-patch-package) + +# Prepare the sources. + +.PHONY: source +source: | $(PackageSourceDir) + +# Patch the sources, if necessary. + +.PHONY: patch +patch: source + +# Generate the package build makefile. + +$(PackageBuildMakefile): | $(PackageSourceDir) $(BuildDirectory) $(ResultDirectory) + $(Verbose)cd $(BuildDirectory) && \ + $(CURDIR)/$(PackageSourceDir)/configure \ + CC="$(CC)" CXX="$(CXX)" AR=$(AR) NM=$(NM) RANLIB=$(RANLIB) STRIP=$(STRIP) \ + INSTALL="$(INSTALL) $(INSTALLFLAGS)" \ + CPPFLAGS="-I$(LinuxIncDir)" \ + GLIB_CFLAGS="-I$(GlibIncDir)" \ + GLIB_LIBS="-L$(GlibLibDir)" \ + --build=$(HostTuple) \ + --host=$(TargetTuple) \ + --disable-extras \ + --disable-introspection \ + --disable-static \ + --enable-shared \ + --without-selinux \ + --prefix=/usr \ + --sysconfdir=/etc \ + --sbindir=/sbin \ + --libdir=/usr/lib \ + --with-rootlibdir=/lib \ + --libexecdir=/lib/udev \ + --localstatedir=/var + +# Configure the source for building. + +.PHONY: configure +configure: source $(PackageBuildMakefile) + +# Build the source. +# +# We have to unset MAKEFLAGS since they confuse the package build otherwise. + +.PHONY: build +build: configure + $(Verbose)unset MAKEFLAGS && \ + $(MAKE) $(JOBSFLAG) -C $(BuildDirectory) all + +# Stage the build to a temporary installation area. +# +# We have to unset MAKEFLAGS since they confuse the package build otherwise. +# +# We explictly remove 'libfoo.la' because some packages that depend on +# these libraries use libtool. If libtool finds a 'libfoo.la' file for +# a library, it uses the value of 'libdir=<dir>' it finds. In our +# case, since '--prefix=/usr' this value is '/usr/lib'. It then +# resolves '-lfoo'. In a cross-compilation environment, this is likely +# to be neither the right architecture nor the right version to link +# against. In short, we lose. +# +# We could also handle this by removing DESTDIR and setting the prefix +# to $(ResultDirectory); however, that results in libtool hard-coding +# $(ResultDirectory) as the RPATH in the linked executables which is +# NOT what we want either. We lose again. +# +# By removing the '*.la' file, we win by ensuring neither a misdirected +# link nor an RPATH. + +.PHONY: stage +stage: build | $(ResultDirectory) + $(Verbose)unset MAKEFLAGS && \ + $(MAKE) $(JOBSFLAG) -C $(BuildDirectory) DESTDIR=$(ResultDirectory) install + $(Verbose)$(RM) $(RMFLAGS) $(call GenerateResultPaths,,usr/lib/libudev.la) + +clean: + $(Verbose)$(RM) $(RMFLAGS) -r $(PackageSourceDir) + $(Verbose)$(RM) $(RMFLAGS) -r $(BuildDirectory) + $(Verbose)$(RM) $(RMFLAGS) -r $(ResultDirectory) + +include post.mak
diff --git a/udev.patches/udev-00.description b/udev.patches/udev-00.description new file mode 100644 index 0000000..a85ce82 --- /dev/null +++ b/udev.patches/udev-00.description
@@ -0,0 +1,2 @@ +Patch from upstream udev167. remove reference to linux/videodev.h so it compiles with gcc 4.8.2 +
diff --git a/udev.patches/udev-00.patch b/udev.patches/udev-00.patch new file mode 100644 index 0000000..7af8ac8 --- /dev/null +++ b/udev.patches/udev-00.patch
@@ -0,0 +1,38 @@ +--- a/extras/v4l_id/v4l_id.c 2009-12-03 04:45:03.000000000 -0800 ++++ b/extras/v4l_id/v4l_id.c 2014-06-05 10:08:37.975863570 -0700 +@@ -28,7 +28,6 @@ + #include <sys/types.h> + #include <sys/time.h> + #include <sys/ioctl.h> +-#include <linux/videodev.h> + #include <linux/videodev2.h> + + int main (int argc, char *argv[]) +@@ -39,7 +38,6 @@ + }; + int fd; + char *device; +- struct video_capability v1cap; + struct v4l2_capability v2cap; + + while (1) { +@@ -82,19 +80,6 @@ + if ((v2cap.capabilities & V4L2_CAP_RADIO) > 0) + printf("radio:"); + printf("\n"); +- } else if (ioctl (fd, VIDIOCGCAP, &v1cap) == 0) { +- printf("ID_V4L_VERSION=1\n"); +- printf("ID_V4L_PRODUCT=%s\n", v1cap.name); +- printf("ID_V4L_CAPABILITIES=:"); +- if ((v1cap.type & VID_TYPE_CAPTURE) > 0) +- printf("capture:"); +- if ((v1cap.type & VID_TYPE_OVERLAY) > 0) +- printf("video_overlay:"); +- if (v1cap.audios > 0) +- printf("audio:"); +- if ((v1cap.type & VID_TYPE_TUNER) > 0) +- printf("tuner:"); +- printf("\n"); + } + + close (fd);
diff --git a/udev.tar.bz2 b/udev.tar.bz2 new file mode 100644 index 0000000..7d1905c --- /dev/null +++ b/udev.tar.bz2 Binary files differ
diff --git a/udev.url b/udev.url new file mode 100644 index 0000000..d0dd82d --- /dev/null +++ b/udev.url
@@ -0,0 +1 @@ +http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev-166.tar.bz2
diff --git a/udev.version b/udev.version new file mode 100644 index 0000000..cdffbbc --- /dev/null +++ b/udev.version
@@ -0,0 +1 @@ +166