Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 572274 | Differences between
and this patch

Collapse All | Expand All

(-)old/opengl.eselect-1.3.1 (+35 lines)
Lines 138-143 Link Here
138
				"${PREFIX#${ROOT}}/${libdir}/xorg/modules"
138
				"${PREFIX#${ROOT}}/${libdir}/xorg/modules"
139
			)
139
			)
140
		fi
140
		fi
141
142
		# Check if opengl implementation directory exists
143
		if [[ ! -d ${PREFIX}/${libdir}/opengl/${gl_implem}/lib ]] ; then
144
			continue
145
		fi
146
147
		# Clear up existing symlinks from /usr/lib to /usr/lib/opengl/*/lib/lib{EGL*,GL*,OpenVG,OpenGL}.{la,a,so*} 
148
		pushd ${PREFIX#${ROOT}}/${libdir} &>/dev/null
149
		local avail_gl_implem
150
		for avail_gl_implem in ${avail_implems}; do
151
			local avail_gl_libdir="${PREFIX#${ROOT}}/${libdir}/opengl/${avail_gl_implem}/lib"
152
			[[ ! -d ${avail_gl_libdir} ]] && continue
153
154
			for libfile in lib{EGL*,GL*,OpenVG,OpenGL}.{la,a,so*} ; do
155
				if [[ ! -f ${libfile} ]] || [[ ! -h ${libfile} ]] ; then
156
					continue
157
				fi
158
				
159
				local target_dir="$(dirname $( readlink -q ${libfile} ) )"
160
				if [[ "${target_dir}" == "${avail_gl_libdir}" ]]; then
161
					rm -f "${libfile}" &>/dev/null
162
				fi
163
			done
164
			popd &>/dev/null
165
		done
166
167
		# Create symlinks from /usr/lib to /usr/lib/opengl/<NEW GL PROVIDER>/lib/lib{EGL*,GL*,OpenVG,OpenGL}.{la,a,so*} 
168
		pushd ${PREFIX#${ROOT}}/${libdir}/opengl/${gl_implem}/lib/ &>/dev/null
169
		for libfile in lib{EGL*,GL*,OpenVG,OpenGL}.{la,a,so*} ; do
170
			[[ ! -f ${libfile} ]] && continue
171
			
172
			local target_lib="$(basename $( readlink -qf ${libfile} ) )"
173
			ln -sf ${PREFIX#${ROOT}}/${libdir}/opengl/${gl_implem}/lib/${target_lib} ${PREFIX#${ROOT}}/${libdir}/${libfile}
174
		done
175
		popd &>/dev/null
141
	done
176
	done
142
177
143
	store_config ${ENV_FILE} LDPATH "${ldpath}"
178
	store_config ${ENV_FILE} LDPATH "${ldpath}"

Return to bug 572274