blob: 3ffb867d106cf01bd8337efa661c1bf706f1918b [file] [log] [blame]
Rob Landleybcfad872007-01-31 14:18:05 -05001/* Wrapper to make installation easier with cross-compiling.
2 *
3 * Copyright 2006 Rob Landley <rob@landley.net>
4 */
5
Rob Landleydf07fb72016-02-10 23:27:55 -06006#include <stdio.h>
7#include "generated/config.h"
8#include "lib/toyflags.h"
Rob Landleybcfad872007-01-31 14:18:05 -05009
Rob Landleydf07fb72016-02-10 23:27:55 -060010#define NEWTOY(name, opts, flags) {#name, flags},
11#define OLDTOY(name, oldname, flags) {#name, flags},
Rob Landleybcfad872007-01-31 14:18:05 -050012
13// Populate toy_list[].
14
Rob Landleydf07fb72016-02-10 23:27:55 -060015struct {char *name; int flags;} toy_list[] = {
Rob Landleyb1aaba12008-01-20 17:25:44 -060016#include "generated/newtoys.h"
Rob Landleybcfad872007-01-31 14:18:05 -050017};
18
Rob Landleybcfad872007-01-31 14:18:05 -050019int main(int argc, char *argv[])
20{
Rob Landley7aa651a2012-11-13 17:14:08 -060021 static char *toy_paths[]={"usr/","bin/","sbin/",0};
22 int i, len = 0;
Rob Landleybcfad872007-01-31 14:18:05 -050023
Rob Landley7aa651a2012-11-13 17:14:08 -060024 // Output list of applets.
Rob Landleydf07fb72016-02-10 23:27:55 -060025 for (i=1; i<sizeof(toy_list)/sizeof(*toy_list); i++) {
Rob Landley7aa651a2012-11-13 17:14:08 -060026 int fl = toy_list[i].flags;
27 if (fl & TOYMASK_LOCATION) {
28 if (argc>1) {
29 int j;
30 for (j=0; toy_paths[j]; j++)
31 if (fl & (1<<j)) len += printf("%s", toy_paths[j]);
32 }
33 len += printf("%s\n",toy_list[i].name);
34 }
35 }
36 return 0;
Rob Landleybcfad872007-01-31 14:18:05 -050037}