1
0
mirror of https://github.com/SuperBFG7/ympd synced 2025-04-05 02:07:04 +00:00
azrdev c1f1adbc28 Don't overwrite CFLAGS
Preserve user/system-configured C_FLAGS.

This broke the rpm package build on fedora: They enable a hardened config (i.e. ASLR) by default, which adds -pie and -fPIC to linker and compiler flags. Overwriting C_FLAGS removed the compiler spec, but not the linker one, leading to an error like:

/bin/cc  -std=gnu99 -Wall -ggdb -pedantic  -specs=/usr/lib/rpm/redhat/redhat-hardened-ld CMakeFiles/mkdata.dir/tools/mkdata.c.o  -o mkdata -rdynamic 
bin/ld: CMakeFiles/mkdata.dir/tools/mkdata.c.o: relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
CMakeFiles/mkdata.dir/tools/mkdata.c.o: error adding symbols: Bad value

With this fix, the error is gone:

/bin/cc  -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -std=gnu99 -Wall -g -ggdb -pedantic  -specs=/usr/lib/rpm/redhat/redhat-hardened-ld CMakeFiles/mkdata.dir/tools/mkdata.c.o  -o mkdata -rdynamic
2017-05-14 07:37:46 +02:00
2014-03-08 12:30:48 +01:00
2016-02-13 18:09:27 +01:00
2017-05-14 07:37:46 +02:00
2015-10-06 18:53:14 +02:00

Build Status ympd

Standalone MPD Web GUI written in C, utilizing Websockets and Bootstrap/JS

http://www.ympd.org

ScreenShot

Dependencies

Unix Build Instructions

  1. install dependencies, cmake and libmpdclient are available from all major distributions.
  2. create build directory cd /path/to/src; mkdir build; cd build
  3. create makefile cmake .. -DCMAKE_INSTALL_PREFIX:PATH=/usr
  4. build make
  5. install sudo make install or just run with ./ympd

Run flags

Usage: ./ympd [OPTION]...

 -h, --host <host>          connect to mpd at host [localhost]
 -p, --port <port>          connect to mpd at port [6600]
 -w, --webport [ip:]<port>  listen interface/port for webserver [8080]
 -u, --user <username>      drop priviliges to user after socket bind
 -V, --version              get version
 --help                     this help

SSL Support

To run ympd with SSL support:

  • create a certificate (key and cert in the same file), example:
# openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 1000 -nodes
# cat key.pem cert.pem > ssl.pem
  • tell ympd to use a webport using SSL and where to find the certificate:
# ./ympd -w "ssl://8081:/path/to/ssl.pem"

2013-2014 andy@ndyk.de

Description
Standalone MPD Web GUI written in C, utilizing Websockets and Bootstrap/JS. Updated and somewhat fixed fork.
Readme GPL-2.0 21 MiB
Languages
C 57.1%
JavaScript 34.5%
HTML 5.1%
CMake 0.9%
Shell 0.9%
Other 1.4%