Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:15.2:Staging:A
xdmbgrd
xdmbgrd-0.6.dif
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File xdmbgrd-0.6.dif of Package xdmbgrd
Index: Makefile =================================================================== --- Makefile | 16 ++++++++++------ backgrd.c | 13 ++++++++++++- piggyback | 44 +++++++++++++++++++++++++++++++++++++------- 3 files changed, 59 insertions(+), 14 deletions(-) --- Makefile +++ Makefile 2014-08-01 00:00:00.000000000 +0000 @@ -7,7 +7,8 @@ CC = gcc COPTS = $(RPM_OPT_FLAGS) -funroll-loops -pipe $(LOOP) CFLAGS = $(COPTS) -Wall -DUSEZLIB=$(USEZLIB) XLIBD = -SUSE = SuSE_Linux_6 +openSUSE = SuSE_Linux_6 +SLES = SuSE_Linux_7 # # Force static linked libgz # @@ -19,18 +20,21 @@ endif all: BackGround -SuSE_Linux.h: SuSE_Linux.o -SuSE_Linux.o: $(SUSE).xpm - ./piggyback $(SUSE).xpm +SuSE_Linux.h: openSuSE.o SLES.o +openSuSE.o: $(openSUSE).xpm + bash -x ./piggyback -n $(basename $@) -h SuSE_Linux.h $? + +SLES.o: $(SLES).xpm + bash -x ./piggyback -n $(basename $@) -h SuSE_Linux.h $? backgrd.o: backgrd.c SuSE_Linux.h unzip.o: unzip.c login-pos.o: login-pos.c -testt: backgrd.c unzip.o login-pos.o SuSE_Linux.o +testt: backgrd.c unzip.o login-pos.o openSuSE.o SLES.o $(CC) $(CFLAGS) -DMAIN -D_PROGRAM=\"xconsole\" -s -o $@ $^ $(LIBS) -BackGround: backgrd.c unzip.o login-pos.o SuSE_Linux.o +BackGround: backgrd.c unzip.o login-pos.o openSuSE.o SLES.o $(CC) $(CFLAGS) -Wl,-no-warn-mismatch -DMAIN -D_PROGRAM=\"xlogin\" -o $@ $^ $(LIBS) clean: --- backgrd.c +++ backgrd.c 2014-08-01 00:00:00.000000000 +0000 @@ -37,7 +37,9 @@ static void setbackgrd (Display *dpy, ch int main () { Display *dpy; + FILE * release = fopen("/etc/SuSE-release", "r"); char *display_name = getenv("DISPLAY"); + char buf[128]; u_int out_len; char *output; @@ -48,7 +50,16 @@ int main () exit(-1); } - get_pick(SuSE_Linux_data, SuSE_Linux_len, &output, &out_len); + if (!release) + get_pick(SLES_data, SLES_len, &output, &out_len); + else { + fgets(buf, sizeof(buf)-1, release); + fclose(release); + if (strncasecmp(buf, "opensuse", 8) == 0) + get_pick(openSuSE_data, openSuSE_len, &output, &out_len); + else + get_pick(SLES_data, SLES_len, &output, &out_len); + } setbackgrd(dpy, _PROGRAM, output); free(output); --- piggyback +++ piggyback 2014-08-01 00:00:00.000000000 +0000 @@ -4,10 +4,39 @@ echo "Need file for encapsulation in object file" 1>&2 exit 1 } + +opt=;arg= +while test "${1::1}" = "-" ; do + if test ${#1} -gt 2 -o "${2::1}" = "-" ; then + opt="$1" ; shift + else + opt="$1$2"; shift 2 + fi + arg="${opt:2}" + opt="${opt:1:1}" + arg="${arg%% }" + case "$opt" in + n) name="$arg" ;; + h) head="$arg" ;; + esac +done + fname=$1 shift args="$@" +if test -z "$name" ; then + name=${fname%%.*} + name=${name%_*} +fi +echo $head +if test -z "$file" ; then + file=${name}.o +fi +if test -z "$head" ; then + head=${file%%.o}.h +fi + tmpfile=$$piggy.gz tmplink=$$piggy.lnk trap "rm -rf $tmpfile $tmplink" 0 1 2 3 5 9 10 13 15 @@ -57,10 +86,6 @@ case $arch in ld_m=${1} ;; esac -name=${fname%%.*} -name=${name%_*} -file=${name}.o -head=${name}.h gzip -9 -f -n -q < $fname > $tmpfile @@ -68,17 +93,22 @@ if type encaps > /dev/null 2>&1 ; then encaps -t $ld_b ${file} $tmpfile ${name}_data ${name}_len else echo \ - "SECTIONS { .data : \ + "SECTIONS { .data : ALIGN(8) \ { \ ${name}_len = .; \ LONG(${name}_data_end - ${name}_data) ${name}_data = .; \ *(.data) ${name}_data_end = .; \ } \ } " > $tmplink - ld -no-warn-mismatch -m $ld_m -r -o ${file} -b binary $tmpfile -b $ld_b -T $tmplink + ld -no-warn-mismatch -m $ld_m -r -o ${file} ${obj} -b binary $tmpfile -b $ld_b -T $tmplink fi -echo "/* Description of encapsulated file $fname */" > ${head} +echo $head +if ! test -s "${head}" ; then + echo "/* Description of encapsulated file $fname */" > ${head} +else + echo "/* Description of encapsulated file $fname */" >> ${head} +fi echo "extern char ${name}_data[];" >> ${head} echo "extern int ${name}_len;" >> ${head}
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor