sysfsutils: move to the correct directory
git-svn-id: svn://svn.openwrt.org/openwrt/packages@33856 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
2200ad4435
commit
243734b1df
@ -1,70 +0,0 @@
|
|||||||
#
|
|
||||||
# Copyright (C) 2006-2012 OpenWrt.org
|
|
||||||
#
|
|
||||||
# This is free software, licensed under the GNU General Public License v2.
|
|
||||||
# See /LICENSE for more information.
|
|
||||||
#
|
|
||||||
|
|
||||||
include $(TOPDIR)/rules.mk
|
|
||||||
|
|
||||||
PKG_NAME:=sysfsutils
|
|
||||||
PKG_VERSION:=2.1.0
|
|
||||||
PKG_RELEASE:=2
|
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
|
||||||
PKG_SOURCE_URL:=@SF/linux-diag
|
|
||||||
PKG_MD5SUM:=14e7dcd0436d2f49aa403f67e1ef7ddc
|
|
||||||
PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org>
|
|
||||||
|
|
||||||
PKG_FIXUP:=autoreconf
|
|
||||||
|
|
||||||
PKG_INSTALL:=1
|
|
||||||
|
|
||||||
include $(INCLUDE_DIR)/package.mk
|
|
||||||
|
|
||||||
define Package/libsysfs
|
|
||||||
SECTION:=libs
|
|
||||||
CATEGORY:=Libraries
|
|
||||||
SUBMENU:=Filesystem
|
|
||||||
TITLE:=Sysfs library
|
|
||||||
URL:=http://linux-diag.sourceforge.net/Sysfsutils.html
|
|
||||||
endef
|
|
||||||
|
|
||||||
define Package/sysfsutils
|
|
||||||
SECTION:=utils
|
|
||||||
CATEGORY:=Utilities
|
|
||||||
SUBMENU:=Filesystem
|
|
||||||
DEPENDS:=+libsysfs
|
|
||||||
TITLE:=System Utilities Based on Sysfs
|
|
||||||
URL:=http://linux-diag.sourceforge.net/Sysfsutils.html
|
|
||||||
endef
|
|
||||||
|
|
||||||
define Package/libsysfs/description
|
|
||||||
The library's purpose is to provide a consistant and stable interface for
|
|
||||||
querying system device information exposed through sysfs.
|
|
||||||
endef
|
|
||||||
|
|
||||||
define Package/sysfsutils/description
|
|
||||||
A utility built upon libsysfs that lists devices by bus, class, and topology.
|
|
||||||
endef
|
|
||||||
|
|
||||||
define Build/InstallDev
|
|
||||||
$(INSTALL_DIR) $(1)/usr/include
|
|
||||||
$(CP) $(PKG_INSTALL_DIR)/usr/include/sysfs $(1)/usr/include/
|
|
||||||
|
|
||||||
$(INSTALL_DIR) $(1)/usr/lib
|
|
||||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libsysfs.{a,so*,la} $(1)/usr/lib/
|
|
||||||
endef
|
|
||||||
|
|
||||||
define Package/libsysfs/install
|
|
||||||
$(INSTALL_DIR) $(1)/usr/lib
|
|
||||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libsysfs.so* $(1)/usr/lib/
|
|
||||||
endef
|
|
||||||
|
|
||||||
define Package/sysfsutils/install
|
|
||||||
$(INSTALL_DIR) $(1)/usr/bin
|
|
||||||
$(CP) $(PKG_INSTALL_DIR)/usr/bin/systool $(1)/usr/bin/
|
|
||||||
endef
|
|
||||||
|
|
||||||
$(eval $(call BuildPackage,libsysfs))
|
|
||||||
$(eval $(call BuildPackage,sysfsutils))
|
|
@ -1,55 +0,0 @@
|
|||||||
--- a/lib/sysfs_utils.c
|
|
||||||
+++ b/lib/sysfs_utils.c
|
|
||||||
@@ -22,6 +22,7 @@
|
|
||||||
*/
|
|
||||||
#include "libsysfs.h"
|
|
||||||
#include "sysfs.h"
|
|
||||||
+#include <mntent.h>
|
|
||||||
|
|
||||||
/**
|
|
||||||
* sysfs_remove_trailing_slash: Removes any trailing '/' in the given path
|
|
||||||
@@ -53,6 +54,9 @@ int sysfs_get_mnt_path(char *mnt_path, s
|
|
||||||
{
|
|
||||||
static char sysfs_path[SYSFS_PATH_MAX] = "";
|
|
||||||
const char *sysfs_path_env;
|
|
||||||
+ FILE *mnt;
|
|
||||||
+ struct mntent *mntent;
|
|
||||||
+ int ret;
|
|
||||||
|
|
||||||
if (len == 0 || mnt_path == NULL)
|
|
||||||
return -1;
|
|
||||||
@@ -64,12 +68,31 @@ int sysfs_get_mnt_path(char *mnt_path, s
|
|
||||||
if (sysfs_path_env != NULL) {
|
|
||||||
safestrcpymax(mnt_path, sysfs_path_env, len);
|
|
||||||
sysfs_remove_trailing_slash(mnt_path);
|
|
||||||
- return 0;
|
|
||||||
+ } else {
|
|
||||||
+ safestrcpymax(mnt_path, SYSFS_MNT_PATH, len);
|
|
||||||
}
|
|
||||||
- safestrcpymax(mnt_path, SYSFS_MNT_PATH, len);
|
|
||||||
}
|
|
||||||
|
|
||||||
- return 0;
|
|
||||||
+ /* check that mount point is indeed mounted */
|
|
||||||
+ ret = -1;
|
|
||||||
+ if ((mnt = setmntent(SYSFS_PROC_MNTS, "r")) == NULL) {
|
|
||||||
+ dprintf("Error getting mount information\n");
|
|
||||||
+ return -1;
|
|
||||||
+ }
|
|
||||||
+ while ((mntent = getmntent(mnt)) != NULL) {
|
|
||||||
+ if (strcmp(mntent->mnt_type, SYSFS_FSTYPE_NAME) == 0 &&
|
|
||||||
+ strcmp(mntent->mnt_dir, mnt_path) == 0) {
|
|
||||||
+ ret = 0;
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ endmntent(mnt);
|
|
||||||
+
|
|
||||||
+ if (ret < 0)
|
|
||||||
+ errno = ENOENT;
|
|
||||||
+
|
|
||||||
+ return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
Loading…
x
Reference in New Issue
Block a user