Send commitlog mailing list submissions to
[email protected]
To subscribe or unsubscribe via the World Wide Web, visit
http://lists.openmoko.org/mailman/listinfo/commitlog
or, via email, send a message with subject or body 'help' to
[EMAIL PROTECTED]
You can reach the person managing the list at
[EMAIL PROTECTED]
When replying, please edit your Subject line so it is more specific
than "Re: Contents of commitlog digest..."
Today's Topics:
1. r4359 -
trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit
([EMAIL PROTECTED])
2. r4360 - trunk/src/target/audio/om-gta02
([EMAIL PROTECTED])
3. r4361 - trunk/src/target/opkg ([EMAIL PROTECTED])
4. r4362 - trunk/src/target/opkg/libopkg ([EMAIL PROTECTED])
5. r4363 - trunk/src/target/opkg/libopkg ([EMAIL PROTECTED])
--- Begin Message ---
Author: sean_chiang
Date: 2008-04-15 12:42:08 +0200 (Tue, 15 Apr 2008)
New Revision: 4359
Modified:
trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/dialer-main.c
Log:
change state when headset in/out
Modified:
trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/dialer-main.c
===================================================================
---
trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/dialer-main.c
2008-04-14 15:49:57 UTC (rev 4358)
+++
trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/dialer-main.c
2008-04-15 10:42:08 UTC (rev 4359)
@@ -23,6 +23,7 @@
#include <gtk/gtk.h>
#include <dbus/dbus-glib.h>
#include <dbus/dbus-glib-bindings.h>
+#include <dbus/dbus-glib-lowlevel.h>
#include <glib-object.h>
#include <libnotify/notify.h>
#include <libebook/e-book.h>
@@ -342,53 +343,52 @@
on_network_status_changed (network, status, pb);
}
-static void
-headset_in_cb (DBusGProxy *proxy, const gchar *name, void *data)
+DBusHandlerResult headset_signal_filter (DBusConnection *bus, DBusMessage
*msg, void *user_data)
{
- PhoneKitDialerStatus status;
- MokoNetwork *network;
- MokoDialer *dialer;
+ PhoneKitDialerStatus status;
+ MokoNetwork *network;
+ MokoDialer *dialer;
- network = moko_network_get_default ();
- dialer = moko_dialer_get_default (network);
-
- status = moko_dialer_get_status(dialer);
+ g_debug( "headset signal filter" );
- moko_headset_status_set(HEADSET_STATUS_IN);
+ network = moko_network_get_default ();
+ dialer = moko_dialer_get_default (network);
+ status = moko_dialer_get_status(dialer);
- if ( PK_DIALER_NORMAL == status )
- moko_sound_profile_set(SOUND_PROFILE_HEADSET);
- if ( PK_DIALER_INCOMING == status )
- moko_sound_profile_set(SOUND_PROFILE_HEADSET);
- if ( PK_DIALER_DIALING == status )
- moko_sound_profile_set(SOUND_PROFILE_HEADSET);
- if ( PK_DIALER_TALKING == status )
- moko_sound_profile_set(SOUND_PROFILE_GSM_HEADSET);
-}
+ if ( dbus_message_is_signal( msg, "org.openmoko.PhoneKit.Headset",
"HeadsetIn" ) )
+ {
+ moko_headset_status_set(HEADSET_STATUS_IN);
+ g_debug( "Headset In" );
-static void
-headset_out_cb (DBusGProxy *proxy, const gchar *name, void *data)
-{
- PhoneKitDialerStatus status;
- MokoNetwork *network;
- MokoDialer *dialer;
+ if ( PK_DIALER_TALKING == status ) {
+ moko_sound_profile_set(SOUND_PROFILE_GSM_HEADSET);
+ g_debug("SOUND_PROFILE_GSM_HEADSET\n");
+ }
+ else {
+ moko_sound_profile_set(SOUND_PROFILE_HEADSET);
+ g_debug("SOUND_PROFILE_HEADSET\n");
+ }
+ return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
+ }
+ else if ( dbus_message_is_signal( msg,"org.openmoko.PhoneKit.Headset",
"HeadsetOut" ) )
+ {
+ moko_headset_status_set(HEADSET_STATUS_OUT);
+ g_debug( "Headset Out" );
- network = moko_network_get_default ();
- dialer = moko_dialer_get_default (network);
-
- status = moko_dialer_get_status(dialer);
-
- moko_headset_status_set(HEADSET_STATUS_OUT);
+ if ( PK_DIALER_TALKING == status ) {
+ moko_sound_profile_set(SOUND_PROFILE_GSM_HANDSET);
+ g_debug("SOUND_PROFILE_GSM_HANDSET\n");
+ }
+ else {
+ moko_sound_profile_set(SOUND_PROFILE_STEREO_OUT);
+ g_debug("SOUND_PROFILE_STEREO_OUT\n");
+ }
+ return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
+ }
- if ( PK_DIALER_NORMAL == status )
- moko_sound_profile_set(SOUND_PROFILE_STEREO_OUT);
- if ( PK_DIALER_INCOMING == status )
- moko_sound_profile_set(SOUND_PROFILE_STEREO_OUT);
- if ( PK_DIALER_DIALING == status )
- moko_sound_profile_set(SOUND_PROFILE_STEREO_OUT);
- if ( PK_DIALER_TALKING == status )
- moko_sound_profile_set(SOUND_PROFILE_GSM_HANDSET);
-}
+ g_debug( "(unknown dbus message, ignoring)" );
+ return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
+}
int
main (int argc, char **argv)
@@ -399,10 +399,26 @@
MokoPb *pb;
DBusGConnection *connection;
DBusGProxy *proxy;
- DBusGProxy *headset_proxy;
GError *error = NULL;
guint32 ret;
+ DBusError err = {0};
+ DBusConnection* bus = dbus_bus_get (DBUS_BUS_SESSION, &err);
+
+ if (!bus)
+ {
+ gchar buffer[100];
+ sprintf (buffer, "Failed to connect to the D-BUS daemon: %s",
err.message);
+ g_critical (buffer);
+ dbus_error_free (&err);
+ return 1;
+ }
+
+ dbus_connection_setup_with_g_main (bus, NULL);
+
+ dbus_bus_add_match (bus, "type='signal'", &err);
+ dbus_connection_add_filter (bus, headset_signal_filter, NULL, NULL);
+
/* initialise type system */
g_type_init ();
@@ -419,6 +435,7 @@
DBUS_SERVICE_DBUS,
DBUS_PATH_DBUS,
DBUS_INTERFACE_DBUS);
+
if (!org_freedesktop_DBus_request_name (proxy,
PHONEKIT_NAMESPACE,
0, &ret, &error))
@@ -469,21 +486,6 @@
SMS_PATH,
G_OBJECT (sms));
- headset_proxy = dbus_g_proxy_new_for_name (connection,
- NULL,
- "/org/openmoko/PhoneKit/Headset",
- "org.openmoko.PhoneKit.Headset");
- dbus_g_proxy_add_signal (headset_proxy,
- "HeadsetIn", G_TYPE_INVALID);
- dbus_g_proxy_connect_signal (headset_proxy,
- "HeadsetIn", G_CALLBACK (headset_in_cb),
- NULL, NULL);
- dbus_g_proxy_add_signal (headset_proxy,
- "HeadsetOut", G_TYPE_INVALID);
- dbus_g_proxy_connect_signal (headset_proxy,
- "HeadsetOut", G_CALLBACK (headset_out_cb),
- NULL, NULL);
-
/* Sync phonebook */
/* XXX this is not the right place! */
pb_sync (pb, network);
--- End Message ---
--- Begin Message ---
Author: sean_chiang
Date: 2008-04-15 13:15:19 +0200 (Tue, 15 Apr 2008)
New Revision: 4360
Modified:
trunk/src/target/audio/om-gta02/gsmhandset.state
Log:
loud the volume of receiver because the change of hw
Modified: trunk/src/target/audio/om-gta02/gsmhandset.state
===================================================================
--- trunk/src/target/audio/om-gta02/gsmhandset.state 2008-04-15 10:42:08 UTC
(rev 4359)
+++ trunk/src/target/audio/om-gta02/gsmhandset.state 2008-04-15 11:15:19 UTC
(rev 4360)
@@ -36,8 +36,8 @@
comment.range '0 - 127'
iface MIXER
name 'Speaker Playback Volume'
- value.0 97
- value.1 97
+ value.0 118
+ value.1 118
}
control.5 {
comment.access 'read write'
--- End Message ---
--- Begin Message ---
Author: thomas
Date: 2008-04-15 16:23:14 +0200 (Tue, 15 Apr 2008)
New Revision: 4361
Removed:
trunk/src/target/opkg/opkg.h.in
Modified:
trunk/src/target/opkg/configure.ac
Log:
opkg: remove redundant opkg.h.in
Modified: trunk/src/target/opkg/configure.ac
===================================================================
--- trunk/src/target/opkg/configure.ac 2008-04-15 11:15:19 UTC (rev 4360)
+++ trunk/src/target/opkg/configure.ac 2008-04-15 14:23:14 UTC (rev 4361)
@@ -138,4 +138,4 @@
src/Makefile
libbb/Makefile
libopkg.pc
- opkg.h)
+ )
Deleted: trunk/src/target/opkg/opkg.h.in
===================================================================
--- trunk/src/target/opkg/opkg.h.in 2008-04-15 11:15:19 UTC (rev 4360)
+++ trunk/src/target/opkg/opkg.h.in 2008-04-15 14:23:14 UTC (rev 4361)
@@ -1,68 +0,0 @@
-/* opkg.h - the itsy package management system
-
- Carl D. Worth
-
- Copyright (C) 2001 University of Southern California
-
- 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, 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.
-*/
-
-#ifndef OPKG_H
-#define OPKG_H
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#if 0
-#define OPKG_DEBUG_NO_TMP_CLEANUP
-#endif
-
-#include "includes.h"
-#include "opkg_conf.h"
-#include "opkg_message.h"
-
-#define OPKG_PKG_EXTENSION ".ipk"
-#define DPKG_PKG_EXTENSION ".deb"
-
-#define OPKG_LEGAL_PKG_NAME_CHARS "abcdefghijklmnopqrstuvwxyz0123456789.+-"
-#define OPKG_PKG_VERSION_SEP_CHAR '_'
-
-#define OPKG_STATE_DIR_PREFIX OPKGLIBDIR"/opkg"
-#define OPKG_LISTS_DIR_SUFFIX "lists"
-#define OPKG_INFO_DIR_SUFFIX "info"
-#define OPKG_STATUS_FILE_SUFFIX "status"
-
-#define OPKG_BACKUP_SUFFIX "-opkg.backup"
-
-#define OPKG_LIST_DESCRIPTION_LENGTH 128
-
-enum opkg_error {
- OPKG_SUCCESS = 0,
- OPKG_PKG_DEPS_UNSATISFIED,
- OPKG_PKG_IS_ESSENTIAL,
- OPKG_PKG_HAS_DEPENDENTS,
- OPKG_PKG_HAS_NO_CANDIDATE
-};
-typedef enum opkg_error opkg_error_t;
-
-extern int opkg_state_changed;
-
-
-struct errlist {
- char * errmsg;
- struct errlist * next;
-} ;
-
-struct errlist* error_list;
-
-
-#endif
--- End Message ---
--- Begin Message ---
Author: thomas
Date: 2008-04-15 16:34:05 +0200 (Tue, 15 Apr 2008)
New Revision: 4362
Added:
trunk/src/target/opkg/libopkg/opkg.c
trunk/src/target/opkg/libopkg/opkg.h
Modified:
trunk/src/target/opkg/libopkg/Makefile.am
Log:
opkg: start new libopkg api in opkg.{c,h} and remove all other header files
from being copied to includes
Modified: trunk/src/target/opkg/libopkg/Makefile.am
===================================================================
--- trunk/src/target/opkg/libopkg/Makefile.am 2008-04-15 14:23:14 UTC (rev
4361)
+++ trunk/src/target/opkg/libopkg/Makefile.am 2008-04-15 14:34:05 UTC (rev
4362)
@@ -3,29 +3,7 @@
libopkg_includedir=$(includedir)/libopkg
-libopkg_include_HEADERS= \
- args.h \
- conffile.h \
- conffile_list.h \
- config.h \
- hash_table.h \
- includes.h \
- opkg_conf.h \
- opkg_message.h \
- opkg_state.h \
- nv_pair.h \
- nv_pair_list.h \
- pkg_depends.h \
- pkg_dest.h \
- pkg_dest_list.h \
- pkg.h \
- pkg_hash.h \
- pkg_src.h \
- pkg_src_list.h \
- pkg_vec.h \
- str_list.h \
- void_list.h \
- libopkg.h
+libopkg_include_HEADERS= opkg.h
libopkg_la_LIBADD = $(top_builddir)/libbb/libbb.la $(CURL_LIBS) $(GPGME_LIBS)
@@ -35,7 +13,8 @@
opkg_core_sources = args.c args.h \
user.c user.h
opkg_libcore_sources = args.c args.h libopkg.c libopkg.h\
- user.c user.h opkg_state.c opkg_state.h
+ user.c user.h opkg_state.c opkg_state.h \
+ opkg.c opkg.h
opkg_cmd_sources = opkg_cmd.c opkg_cmd.h \
opkg_configure.c opkg_configure.h \
opkg_download.c opkg_download.h \
Added: trunk/src/target/opkg/libopkg/opkg.c
===================================================================
--- trunk/src/target/opkg/libopkg/opkg.c 2008-04-15 14:23:14 UTC (rev
4361)
+++ trunk/src/target/opkg/libopkg/opkg.c 2008-04-15 14:34:05 UTC (rev
4362)
@@ -0,0 +1,156 @@
+/* opkg.c - the opkg package management system
+
+ Thomas Wood <[EMAIL PROTECTED]>
+
+ Copyright (C) 2008 OpenMoko Inc
+
+ 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, 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.
+ */
+
+#include <config.h>
+#include <fnmatch.h>
+
+#include "opkg.h"
+#include "opkg_conf.h"
+#include "args.h"
+
+#include "opkg_install.h"
+#include "opkg_configure.h"
+
+struct _opkg_t
+{
+ args_t *args;
+ opkg_conf_t *conf;
+};
+
+/** Private Functions ***/
+
+
+static int
+opkg_configure_packages(opkg_conf_t *conf, char *pkg_name)
+{
+ pkg_vec_t *all;
+ int i;
+ pkg_t *pkg;
+ int r, err = 0;
+
+ all = pkg_vec_alloc();
+ pkg_hash_fetch_available(&conf->pkg_hash, all);
+
+ for (i = 0; i < all->len; i++)
+ {
+ pkg = all->pkgs[i];
+
+ if (pkg_name && fnmatch(pkg_name, pkg->name, 0))
+ continue;
+
+ if (pkg->state_status == SS_UNPACKED)
+ {
+ r = opkg_configure(conf, pkg);
+ if (r == 0)
+ {
+ pkg->state_status = SS_INSTALLED;
+ pkg->parent->state_status = SS_INSTALLED;
+ pkg->state_flag &= ~SF_PREFER;
+ }
+ else
+ {
+ if (!err)
+ err = r;
+ }
+ }
+ }
+
+ pkg_vec_free(all);
+ return err;
+}
+
+
+
+/*** Public API ***/
+
+opkg_t *
+opkg_new ()
+{
+ opkg_t *opkg;
+ opkg = malloc (sizeof (opkg_t));
+ args_init (opkg->args);
+ opkg_conf_init (opkg->conf, opkg->args);
+ return opkg;
+}
+
+void
+opkg_free (opkg_t *opkg)
+{
+ opkg_conf_deinit (opkg->conf);
+ args_deinit (opkg->args);
+}
+
+void
+opkg_get_option (opkg_t *opkg, char *option, void **value)
+{
+}
+
+void
+opkg_set_option (opkg_t *opkg, char *option, void *value)
+{
+}
+
+int
+opkg_install_package (opkg_t *opkg, char *package_name)
+{
+ int err;
+
+ pkg_info_preinstall_check(opkg->conf);
+
+ if (opkg->conf->multiple_providers)
+ {
+ err = opkg_install_multi_by_name (opkg->conf, package_name);
+ }
+ else
+ {
+ err = opkg_install_by_name (opkg->conf, package_name);
+ }
+
+ err = opkg_configure_packages (opkg->conf, NULL);
+
+ if (opkg->conf->noaction)
+ return err;
+
+ opkg_conf_write_status_files (opkg->conf);
+ pkg_write_changed_filelists (opkg->conf);
+
+ return err;
+}
+
+int
+opkg_remove_package (opkg_t *opkg, char *package_name)
+{
+ return 1;
+}
+
+int
+opkg_upgrade_package (opkg_t *opkg, char *package_name)
+{
+ return 1;
+}
+
+int
+opkg_upgrade_all (opkg_t *opkg)
+{
+ return 1;
+}
+
+int
+opkg_update_package_lists (opkg_t *opkg)
+{
+ return 1;
+}
Added: trunk/src/target/opkg/libopkg/opkg.h
===================================================================
--- trunk/src/target/opkg/libopkg/opkg.h 2008-04-15 14:23:14 UTC (rev
4361)
+++ trunk/src/target/opkg/libopkg/opkg.h 2008-04-15 14:34:05 UTC (rev
4362)
@@ -0,0 +1,26 @@
+/* opkg.h - the opkg package management system
+
+ Thomas Wood <[EMAIL PROTECTED]>
+
+ Copyright (C) 2008 OpenMoko Inc
+
+ 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, 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.
+*/
+
+typedef struct _opkg_t opkg_t;
+
+opkg_t* opkg_new ();
+void opkg_free (opkg_t *opkg);
+int opkg_install_package (opkg_t *opkg, char *package_name);
+int opkg_remove_package (opkg_t *opkg, char *package_name);
+int opkg_upgrade_package (opkg_t *opkg, char *package_name);
+int opkg_upgrade_all (opkg_t *opkg);
+int opkg_update_package_lists (opkg_t *opkg);
--- End Message ---
--- Begin Message ---
Author: thomas
Date: 2008-04-15 18:31:30 +0200 (Tue, 15 Apr 2008)
New Revision: 4363
Modified:
trunk/src/target/opkg/libopkg/opkg.c
trunk/src/target/opkg/libopkg/opkg.h
trunk/src/target/opkg/libopkg/opkg_conf.c
trunk/src/target/opkg/libopkg/opkg_conf.h
Log:
opkg: implement opkg_set_option() and opkg_get_option()
Modified: trunk/src/target/opkg/libopkg/opkg.c
===================================================================
--- trunk/src/target/opkg/libopkg/opkg.c 2008-04-15 14:34:05 UTC (rev
4362)
+++ trunk/src/target/opkg/libopkg/opkg.c 2008-04-15 16:31:30 UTC (rev
4363)
@@ -29,6 +29,7 @@
{
args_t *args;
opkg_conf_t *conf;
+ opkg_option_t *options[];
};
/** Private Functions ***/
@@ -84,6 +85,7 @@
opkg = malloc (sizeof (opkg_t));
args_init (opkg->args);
opkg_conf_init (opkg->conf, opkg->args);
+ opkg_init_options_array (opkg->conf, opkg->options);
return opkg;
}
@@ -97,11 +99,84 @@
void
opkg_get_option (opkg_t *opkg, char *option, void **value)
{
+ int i = 0;
+ opkg_option_t **options = opkg->options;
+
+ /* can't store a value in a NULL pointer! */
+ if (!value)
+ return;
+
+ /* look up the option
+ * TODO: this would be much better as a hash table
+ */
+ while (options[i]->name)
+ {
+ if (strcmp(options[i]->name, option) != 0)
+ {
+ i++;
+ continue;
+ }
+ }
+
+ /* get the option */
+ switch (options[i]->type)
+ {
+ case OPKG_OPT_TYPE_BOOL:
+ *((int *) value) = *((int *) options[i]->value);
+ return;
+
+ case OPKG_OPT_TYPE_INT:
+ *((int *) value) = *((int *) options[i]->value);
+ return;
+
+ case OPKG_OPT_TYPE_STRING:
+ *((char **)value) = strdup (options[i]->value);
+ return;
+ }
+
}
void
opkg_set_option (opkg_t *opkg, char *option, void *value)
{
+ int i = 0;
+ opkg_option_t **options = opkg->options;
+
+ /* NULL values are not defined */
+ if (!value)
+ return;
+
+ /* look up the option
+ * TODO: this would be much better as a hash table
+ */
+ while (options[i]->name)
+ {
+ if (strcmp(options[i]->name, option) != 0)
+ {
+ i++;
+ continue;
+ }
+ }
+
+ /* set the option */
+ switch (options[i]->type)
+ {
+ case OPKG_OPT_TYPE_BOOL:
+ if (*((int *) value) == 0)
+ *((int *)options[i]->value) = 0;
+ else
+ *((int *)options[i]->value) = 1;
+ return;
+
+ case OPKG_OPT_TYPE_INT:
+ *((int *) options[i]->value) = *((int *) value);
+ return;
+
+ case OPKG_OPT_TYPE_STRING:
+ *((char **)options[i]->value) = strdup(value);
+ return;
+ }
+
}
int
Modified: trunk/src/target/opkg/libopkg/opkg.h
===================================================================
--- trunk/src/target/opkg/libopkg/opkg.h 2008-04-15 14:34:05 UTC (rev
4362)
+++ trunk/src/target/opkg/libopkg/opkg.h 2008-04-15 16:31:30 UTC (rev
4363)
@@ -19,6 +19,9 @@
opkg_t* opkg_new ();
void opkg_free (opkg_t *opkg);
+void opkg_get_option (opkg_t *opkg, char *option, void **value);
+void opkg_set_option (opkg_t *opkg, char *option, void *value);
+
int opkg_install_package (opkg_t *opkg, char *package_name);
int opkg_remove_package (opkg_t *opkg, char *package_name);
int opkg_upgrade_package (opkg_t *opkg, char *package_name);
Modified: trunk/src/target/opkg/libopkg/opkg_conf.c
===================================================================
--- trunk/src/target/opkg/libopkg/opkg_conf.c 2008-04-15 14:34:05 UTC (rev
4362)
+++ trunk/src/target/opkg/libopkg/opkg_conf.c 2008-04-15 16:31:30 UTC (rev
4363)
@@ -33,7 +33,6 @@
pkg_src_list_t *pkg_src_list,
nv_pair_list_t *tmp_dest_nv_pair_list,
char **tmp_lists_dir);
-static int opkg_init_options_array(const opkg_conf_t *conf, opkg_option_t
**options);
static int opkg_conf_set_option(const opkg_option_t *options,
const char *name, const char *value);
static int opkg_conf_set_default_dest(opkg_conf_t *conf,
Modified: trunk/src/target/opkg/libopkg/opkg_conf.h
===================================================================
--- trunk/src/target/opkg/libopkg/opkg_conf.h 2008-04-15 14:34:05 UTC (rev
4362)
+++ trunk/src/target/opkg/libopkg/opkg_conf.h 2008-04-15 16:31:30 UTC (rev
4363)
@@ -104,4 +104,7 @@
int opkg_conf_write_status_files(opkg_conf_t *conf);
char *root_filename_alloc(opkg_conf_t *conf, char *filename);
+
+int opkg_init_options_array(const opkg_conf_t *conf, opkg_option_t **options);
+
#endif
--- End Message ---
_______________________________________________
commitlog mailing list
[email protected]
http://lists.openmoko.org/mailman/listinfo/commitlog